我有一个字典列表,我试图在其中找到两个键,如果找到,请确保它们属于同一词典。到目前为止,我有:
foo = [{'apples': 1, 'banana': 2}, {'people': 1, 'monkeys': 2}]
food = any(d['apples'] == 1 for d in foo)
mammals = any(d['banana'] == 2 for d in foo)
if food and mammals:
return True
但是,如何验证它们都来自同一词典?
只需一次检查两个键,则无需进行其他任何检查:
foo = [{'apples': 1, 'banana': 4}, {'people': 1, 'monkeys': 2}]
print(any(d.get('apples') == 1 and d.get('banana')== 2 for d in f))
简而言之:
return any(d.get('apples') == 1 and d.get('banana')== 2 for d in f)
就目前而言,您实际上会得到a keyError
,应该使用dict.get
赶在每个字典中缺少任何键的情况下进行捕获。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句