枚举python中类的所有属性

时间:2019-05-19 05:44:18

标签: python enumeration

如何枚举Python中类的所有属性和实例?

这是课程:

class Human:
    def __init__(self, name, age, gender):
        self.name = name
        self.age = age
        self.gender = gender

这不能重复。我基本上想获得一个包含所有属性名称及其值的字典,然后遍历字典。

1 个答案:

答案 0 :(得分:1)

每个类都有一个__dict__属性,该属性是其所有属性的字典(以及其他一些以双下划线开头的特殊字段。

因此,您可以遍历__dict__并忽略下划线开头的键。

如果只需要属性,也可以跳过callables

但是也许您应该使用dataclass