小编典典

在Python对象中,如何查看使用@property装饰器定义的属性列表?

python

我可以使用看到一流的成员变量self.__dict__,但我也想看看用@property装饰器定义的属性字典。我怎样才能做到这一点?


阅读 222

收藏
2021-01-20

共1个答案

小编典典

您可以在类中添加一个类似于以下内容的函数:

def properties(self):
    class_items = self.__class__.__dict__.iteritems()
    return dict((k, getattr(self, k)) 
                for k, v in class_items 
                if isinstance(v, property))

这将查找类中的所有属性,然后为每个字典创建一个字典,并为每个属性添加具有当前实例值的条目。

2021-01-20