use*_*419 11 python dictionary if-statement nonetype
是否可以在dict中检查无值
dict = {'a':'None','b':'12345','c':'None'}
Run Code Online (Sandbox Code Playgroud)
我的代码
for k,v in d.items():
if d[k] != None:
print "good"
else:
print "Bad
Run Code Online (Sandbox Code Playgroud)
执行上面的代码片段后打印三个好.
good
good
good
Run Code Online (Sandbox Code Playgroud)
必需:如果值为None,则不能打印dict键a和c.
dm0*_*514 27
您的无值实际上是字典中的字符串.
您可以检查"无"或使用实际的python 无值.
d = {'a':None,'b':'12345','c':None}
for k,v in d.items():
if d[k] is None:
print "good"
else:
print "Bad"
Run Code Online (Sandbox Code Playgroud)
打印"好"2次
或者如果您必须使用当前字典,只需更改您的支票即可查找 'None'
另外dict是一个内置类型的python,所以不要命名变量是个好主意 dict
使用定义词典
d = {'a': None}
Run Code Online (Sandbox Code Playgroud)
而不是
d = {'a': 'None'}
Run Code Online (Sandbox Code Playgroud)
在后一种情况下,'None'只是一个字符串,而不是Python的None类型.另外,None使用身份运算符测试is:
for key, value in d.iteritems():
if value is None:
print "None found!"
Run Code Online (Sandbox Code Playgroud)