是否可以检查字典中的无值
dict = {'a':'None','b':'12345','c':'None'}
我的代码
for k,v in d.items():
if d[k] != None:
print "good"
else:
print "Bad
执行上述代码片段后打印三个好的。
good
good
good
必需:如果值为 None ,则对 dict 键 a 和 c 不打印好。
是否可以检查字典中的无值
dict = {'a':'None','b':'12345','c':'None'}
我的代码
for k,v in d.items():
if d[k] != None:
print "good"
else:
print "Bad
执行上述代码片段后打印三个好的。
good
good
good
必需:如果值为 None ,则对 dict 键 a 和 c 不打印好。
您的 none 值实际上是字典中的字符串。
您可以检查“无”或使用实际的 python无值。
d = {'a':None,'b':'12345','c':None}
for k,v in d.items():
if d[k] is None:
print "good"
else:
print "Bad"
打印“好”2次
或者,如果您必须使用当前的字典,只需更改您的检查以查找'None'
另外 dict 是一个 python 内置类型,所以最好不要命名变量dict
定义你的字典
d = {'a': None}
而不是
d = {'a': 'None'}
在后一种情况下,'None'
它只是一个字符串,而不是 Python 的None
类型。此外,None
使用身份运算符进行测试is
:
for key, value in d.iteritems():
if value is None:
print "None found!"
def none_in_dict(d):
for _, value in d.items():
if value is None:
return True
return False
用途是:
if none_in_dict(my_dict):
logger.error(my_err_msg)
而不是使用“如果值是无”,您可以简单地使用
if not value: print "None found!"
如果 value 有一些数据,“if value”将为真,如果没有数据,则为假。因此,您不必在 if 条件中显式使用 None 关键字。