3 回答
TA贡献1842条经验 获得超21个赞
dir(obj)
为您提供对象的所有属性。您需要自己从方法等中过滤出成员:
class Example(object):
bool143 = True
bool2 = True
blah = False
foo = True
foobar2000 = False
example = Example()
members = [attr for attr in dir(example) if not callable(getattr(example, attr)) and not attr.startswith("__")]
print members
会给你:
['blah', 'bool143', 'bool2', 'foo', 'foobar2000']
TA贡献1831条经验 获得超9个赞
>>> a = Example()
>>> dir(a)
['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__',
'__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__',
'__sizeof__', '__str__', '__subclasshook__', 'bool143', 'bool2', 'blah',
'foo', 'foobar2000', 'as_list']
—如您所见,它为您提供了所有属性,因此您必须进行过滤。但基本上,dir()这就是您要寻找的。
添加回答
举报