我有一个字典的字典:
x = {'NIFTY': {11382018: 'NIFTY19SEPFUT', 13177346: 'NIFTY19OCTFUT', 12335874: 'NIFTY19NOVFUT'}}
这本词典里面还有很多其他的词典。
我想检查是否示例:
y = 11382018
存在于字典中,如果存在,则获取主key 在这种情况下NIFTY 和上述key 的值即'NIFTY19SEPFUT'
我可以按照我假设的以下方式做到这一点:
for key in x.keys():
di = x[key]
if y in di.keys():
inst = key
cont = di[y]
只是想知道是否有更好的方法。
我在考虑不必遍历整个字典主 keys
请您参考如下方法:
检索两个感兴趣的值的更紧凑的方法是使用嵌套字典理解:
[(k, sv) for k,v in x.items() for sk,sv in v.items() if sk == y]
# [('NIFTY', 'NIFTY19SEPFUT')]
