在python中循环一个类的所有成员变量

如何获得类中所有可迭代变量的列表?有点像locals(),但对于类来说

类示例(对象):
bool143=True
bool2=True
废话
foo=True
foobar2000=False
def as_列表(自身)
ret=[]
对于XXX中的字段:
如果getattr(自身,字段):
ret.append(字段)
返回“,”。加入(ret)

这应该会回来

&gt&燃气轮机&燃气轮机;e=示例()
&燃气轮机&燃气轮机&燃气轮机;e、 as_list()
bool143,bool2,foo
目录(obj)

提供对象的所有属性。
您需要自己从方法等中筛选出成员:

类示例(对象):
bool143=True
bool2=True
废话
foo=True
foobar2000=False
示例=示例()
members=[attr for attr in dir(示例),如果不可调用(getattr(示例,attr)),则为[attr for attr in dir(示例)),而不是attr.startswith(“\uuuuux1”)]
打印成员

将为您提供:

['blah','bool143','bool2','foo','foobar2000']

发表评论