python - vars() 函数有什么用?
问题描述
我在python中遇到过这个函数vars()
,我知道它返回__dict__
传递给函数的对象的属性但是你能给我一个真实世界的使用例子吗,比如我们可以在真实项目中使用它的地方
解决方案
让我举个例子:有时你可能需要检查一个类对象的属性是 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'
推荐阅读
- xml - 在 xml 中使用“本地”命名空间
- javascript - 将状态设置反应到前一个元素的值
- r - 如何在 R Shiny 的 Highcharter 库中将点击事件附加到 hcmap 函数?
- c - 为什么动态 ELF 文件中没有 .rel.dyn/.got.plt 部分?
- linux - 写入内存 - LINUX
- python - 使用来自另一个文件的值从一个文件中读取特定行
- javascript - 使用 javascript 选择 JSTL 标记
- database - 如何使用带有 Redshift 的 COPY 命令列出列?
- java - 编程游戏中的 Java 循环
- mongodb - 在 MongoDB Atlas 上将共享主机的 IP 地址列入白名单