我有一个包含以下内容的.json文件:
"[{'x':{'xx':'192.111.1.11'}},{'y':{'yx':'192.111.1.12'}}]"
我试图使用:
if x in somelist:
return something
但这永远不会奏效。如何在列表中找到某个字典,而不知道该字典变量的定义。 (所以我不能知道'x'
引用{'xx': '192.111.1.11'}
)。
答案 0 :(得分:1)
您正在寻找其中一个词典中键的存在;使用带有生成器表达式的any()
function依次测试每个字典:
if any(x in d for d in somelist):
一旦确认匹配,这将停止测试词典。
我已经假设您已经将JSON加载到Python结构中。
演示:
>>> somelist = [{'x':{'xx':'192.111.1.11'}},{'y':{'yx':'192.111.1.12'}}]
>>> any('x' in d for d in somelist)
True
>>> any('z' in d for d in somelist)
False