Python中字典内字典的值查找
我有一本Python字典,格式如下:Python中字典内字典的值查找,python,dictionary,Python,Dictionary,我有一本Python字典,格式如下: mongo = { 1: {'syno': ['a','b','c'], 'can': ['2','3','4']}, 2 :{'syno': ['x','y','z'], 'can': ['6','7','8']}, } 我有一个名为《国际热核试验大纲》的清单: syno_iter = ['a','b','c','d','e'] 使用syno\u iter中的单个值,假设a。我想在mongo{}中获取can中的值,就像如果值a在值syn
mongo = {
1: {'syno': ['a','b','c'], 'can': ['2','3','4']},
2 :{'syno': ['x','y','z'], 'can': ['6','7','8']},
}
我有一个名为《国际热核试验大纲》的清单:
syno_iter = ['a','b','c','d','e']
使用syno\u iter
中的单个值,假设a
。我想在mongo{}
中获取can
中的值,就像如果值a
在值syno
中可用一样,我们可以返回can
我们没有任何方法知道mongo dict的键。同样,由于字典不适用,我们不能使用范围的东西 重申: 我想做这样的事情-
for i in syno_iter:
if i in (mongo.values('syno')):
print mongo.values('can'(values()))
您可以通过以下方式执行类似的查找: 代码: 测试代码: 结果:
不清楚你在说什么,你能用想要的输出编辑你的问题吗?“也因为字典不合适”不确定你是从哪里得到的。您始终可以为mongo中的键迭代字典
,或为mongo中的键、值迭代字典output@FlyingTeller我现在就试试这个
input - 'a'
output - ['2','3','4']
def get_syno_values(data, lookup):
for row in data.values():
if lookup in row['syno']:
return row['can']
mongo = {
1: {'syno': ['a', 'b', 'c'], 'can': ['2', '3', '4']},
2: {'syno': ['x', 'y', 'z'], 'can': ['6', '7', '8']}
}
syno_iter = ['a', 'b', 'c', 'd', 'e']
print(get_syno_values(mongo, 'a'))
print(get_syno_values(mongo, 'y'))
['2', '3', '4']
['6', '7', '8']