Вы хотите взглянуть на функцию dir()
:
>>> li = []
>>> dir(li)
['append', 'count', 'extend', 'index', 'insert',
'pop', 'remove', 'reverse', 'sort']
li
- это список, поэтому dir(li)
возвращает список всех методов списка. Обратите внимание, что возвращаемый список содержит имена методов в виде строк, а не сами методы.
Изменить в ответ на комментарий:
Нет, это также покажет все унаследованные методы. Рассмотрим этот пример:
test.py:
class Foo:
def foo(): pass
class Bar(Foo):
def bar(): pass
Переводчик Python:
>>> from test import Foo, Bar
>>> dir(Foo)
['__doc__', '__module__', 'foo']
>>> dir(Bar)
['__doc__', '__module__', 'bar', 'foo']
Обратите внимание, что Документация Python гласит:
Примечание: Поскольку dir()
поставляется
прежде всего для удобства использования при
интерактивное приглашение , оно пытается
предоставить интересный набор имен
больше, чем он пытается поставить
строго или последовательно определенный набор
имен, и его подробное поведение
может меняться в зависимости от версии . За
Например, атрибуты метакласса не являются
в списке результатов, когда аргумент
это класс.
Поэтому использование в вашем коде небезопасно. Вместо этого используйте vars()
. Vars()
не содержит информацию о суперклассах, вам придется собирать их самостоятельно.
Если вы используете dir()
для поиска информации в интерактивном переводчике, рассмотрите возможность использования help()
.