我试图查看python中的JSON中是否存在键和值对。
这是我所拥有的:
{
"cars": [
{
"model": "test"
},
{
"model": "test2"
}
]
}
我已经尝试过了:
jsondata = open("test.json",'r').read()
fileData = json.loads(jsondata)
if "test" in [cars.model for cars in fileData]:
print('test')
任何帮助将不胜感激。
答案 0 :(得分:2)
尝试一下:
if "test" in [cars['model'] for cars in fileData['cars']]:
print('test')
更新:
print([cars for cars in fileData['cars'] if cars['model']=='test'])
只需要进行列表理解
答案 1 :(得分:1)
我建议的最好方法是使用字典和异常处理。每当找不到特定密钥时,都会引发'KeyError'异常,这将使您可以在密钥不存在的情况下进行有需要的操作。
在您的情况下:
jsondata = open("test.json",'r').read()
fileData = json.loads(jsondata)
try:
cars = fileData['cars']
except KeyError:
print("Missing cars key")
希望有帮助!