python:在嵌套字典中找到最大值,但KeyError

问题描述 投票:0回答:1

我有一个嵌套的字典,像这样:input_dic = {'GCT': {'A': '2.520'}, 'GCC': {'A': '1.294'}, 'GCA': {'A': '0.161'}, 'GCG': {'A': '0.025'}, 'TGT': {'C': '1.422'}, 'TGC': {'C': '0.578'}, 'GAT': {'D': '0.645'}}我想提取每个组的最大值,例如A为2.520,所以我尝试:max(float(x['A']) for x in input_dic.values())但是,出了点问题,它说KeyError:“ A”。我认为这可能是因为该键不是唯一的,但我不知道要修复它。我尝试了新方法构建字典,例如{('A', 'GCT'): '2.520', ('A', 'GCC'): '1.294', ('A', 'GCA'): '0.161', ('A', 'GCG'): '0.025', ('C', 'TGT'): '1.422', ('C', 'TGC'): '0.578', ('D', 'GAT'): '0.645' },但我也不知道要提取gruop A是2.520。请告诉我您是否知道去做。

python dictionary keyerror
1个回答
1
投票

键入之前验证'A'中是否存在x键:

max(float(x['A']) for x in input_dic.values() if 'A' in x)
© www.soinside.com 2019 - 2024. All rights reserved.