vars()函数有什么用?

时间:2019-01-21 02:02:23

标签: python

我在python中遇到函数vars(),我知道它返回传递给该函数的对象的__dict__属性,但是您能给我一个真实的用法示例,例如我们可以在其中使用它的地方真实项目

1 个答案:

答案 0 :(得分:0)

让我举个例子: 有时您可能需要检查类对象的属性为None或其他,可以使用vars()

class Test(object):
    def __init__(self):
        self.a = None
        self.b = None
        self.c = None

    def init_abc(self, init_dict):
        """init class param"""
        self.a = init_dict.get('a')
        self.b = init_dict.get('b')
        self.c = init_dict.get('c')

    def __repr__(self):
        return 'a=%s,b=%s, c=%s' % (self.a, self.b, self.c)

test = Test()
init_abc_dict = {'a':1, 'c':2}
test.init_abc(init_abc_dict)
print 'Test:%s' % test
if None in vars(test).values():
    print 'some attr is None'