如何在Python对象中获取属性名称?

4
例如,我有以下的Python类:
class Myclass():
     a = int
     b = int

假设我不知道这个类的名称,那么我需要获取属性的名称?("a"和"b")

1个回答

10

如果你想获取所有(包括私有的)属性,只需

dir(Myclass)

_开头的属性是私有/内部的。例如,即使是您的简单Myclass也会有一个__module__和一个空的__doc__属性。要过滤掉这些,请使用

filter(lambda aname: not aname.startswith('_'), dir(Myclass))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接