【发布时间】:2018-07-23 01:13:05
【问题描述】:
函数 'hasattr()' 在 Python 中无法正常工作
我有以下代码:
#!/usr/bin/python
import re
import os
import sys
results=[{'data': {}, 'name': 'site1'}, {'data': {u'Brazil': '5/1', u'Panama': '2000/1'}, 'name': 'site2'}]
print results[1]
if hasattr(results[1]['data'], u'Brazil'):
print 'has'
else:
print 'hasn\'t'
当我运行它时,它会给我输出:hasn't。
我不明白如何检查该属性是否存在。
我试图在Brazil 之前删除u,但它不起作用。
如何解决?
【问题讨论】:
-
这不是一个属性,您可以使用
'Brazil' in results[1]['data']检查字典/集合中某个键的成员资格。 -
也许标题应该是“hasattr 是做什么用的?”因为它完全符合预期,尽管您的期望可能有所不同。
-
@SethMMorton:已编辑
标签: python dictionary hasattr