我有2个字典:
a = {'abc': 12}
b = {'abcd': 13, 'abc': 99}
Run Code Online (Sandbox Code Playgroud)
我想检查字典中是否存在某个键.在这种情况下,我想检查a和c是否包含密钥'abc'
我有以下代码:
if 'abc' in a:
if 'abc' in b:
print(True)
else:
print(False)
else:
print(False)
Run Code Online (Sandbox Code Playgroud)
和:
if ('abc' in a) and ('abc' in b):
print(True)
else:
print(False)
Run Code Online (Sandbox Code Playgroud)
但是有更好的方法吗?
不是 - 这几乎和它一样好......对于发生的事情,它是可读的和明显的:
如果dicts 的数量增长:
all('abc' in d for d in (d1, d2, d3, d4))
Run Code Online (Sandbox Code Playgroud)
或者,先预先计算,然后访问:
common_keys = set(d1).intersection(d2, d2, d3, d4)
'abc' in common_keys
Run Code Online (Sandbox Code Playgroud)