[英]Check whether a given value is in a nested dictionary
我有这种结构,使用json.load(json)
转换
jsonData = [ {
thing: [
name: 'a name',
keys: [
key1: 23123,
key2: 83422
]
thing: [
name: 'another name',
keys: [
key1: 67564,
key2: 93453
]
etc....
} ]
我有key1check = 67564
,我想检查事物的key1是否与此值匹配
if key1check in val['thing']['keys']['key1'] for val in jsonData:
print ('key found, has name of: {}'.format(jsonData['thing']['name'])
应该行吗? 有更好的办法吗?
不完全的:
否则,你做得很好......但你不应该问我们是否会工作:通过运行代码询问Python解释器。
为您的结构尝试以下操作:
jsonData = [
{ "thing": {
"name": 'a name',
"keys": {
"key1": 23123,
"key2": 83422
} } },
{ "thing": {
"name": 'another name',
"keys": {
"key1": 67564,
"key2": 93453
} } }
]
只要结构是一致的,就可以使用类似的方法遍历@Prune的字典。
for item in jsonData:
if item['thing']['keys']['key1'] == key1check:
print("true")
else:
print("false")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.