你想看看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's documentation 声明:
注意:因为提供了dir()
主要是为了方便在
一个交互式提示,它会尝试
提供一组有趣的名称
不仅仅是它试图提供一个
严格或一致定义的集合
名称、及其详细行为
可能会因版本而异。为了
例如,元类属性不是
在结果列表中当参数
是一个类。
因此,在您的代码中使用它是不安全的。请改用vars()。 Vars() 不包含有关超类的信息,您必须自己收集它们。
如果您使用dir() 在交互式解释器中查找信息,请考虑使用help()。