如何在python中从多个键获取值
对于上面的dict,如果我试图通过说d[AGC]来访问值S,编译器会给我一个键错误。我试着在这里看其他问题,但我找不到答案 错误:如何在python中从多个键获取值,python,python-3.x,dictionary,Python,Python 3.x,Dictionary,对于上面的dict,如果我试图通过说d[AGC]来访问值S,编译器会给我一个键错误。我试着在这里看其他问题,但我找不到答案 错误: d = {"AUG":"M", ("UAA","UAG","UGA"):'', ("GCU","GCC","GCA","GCG"):"A", ("CGU","CGC","CGA","CGG","AGA","AGG"):"R", ("AAU","AAC"):"N", ("GAU","GAC"):"D", ("UGU","UGC"):"C", ("UCU","UCC",
d = {"AUG":"M",
("UAA","UAG","UGA"):'',
("GCU","GCC","GCA","GCG"):"A",
("CGU","CGC","CGA","CGG","AGA","AGG"):"R",
("AAU","AAC"):"N",
("GAU","GAC"):"D",
("UGU","UGC"):"C",
("UCU","UCC","UCA","UCG","AGU","AGC"):"S",
("CCU","CCC","CCA","CCG"):"P",
("ACU","ACC","ACA","ACG"):"T",
("GUU","GUC","GUA","GUG"):"V",
("UUA","UUG","CUU","CUC","CUA","CUG"):"L",
("AUU","AUC","AUA"):"I",
("UUU","UUC"):"F",
("UAU","UAC"):"Y",
("CAU","CAC"):"H",
("CAA","CAG"):"Q",
("AAA","AAG"):"K",
("GAA","GAG"):"E",
"UGG":"W",
("GGU","GGC","GGA","GGG"):"G"}
UCU、UCC、UCA、UCG、AGU、AGC:S并不意味着6个键,每个键的值都是S。它意味着整个元组的一个键,值为S。毫不奇怪,当您尝试使用AGC查找它时,它没有找到它。您需要实际创建单独的键。UCU、UCC、UCA、UCG、AGU、AGC:S并不意味着每个键都有6个键,每个键的值为S。它意味着整个元组的一个键,值为S。毫不奇怪,当您尝试使用AGC查找它时,它没有找到它。您需要实际创建单独的键
如果您需要能够通过项目的3位代码检索项目,您可以
这样做如下
用法
如果您需要能够通过项目的3位代码检索项目,您可以
这样做如下
用法
你有没有想过如果AGC碰巧存在于其他按键中会怎样?你有没有想过如果AGC碰巧存在于其他按键中会怎样?谢谢。这就是我想要的答案。谢谢。这就是我一直在寻找的答案。
Traceback (most recent call last): File "p_synt.py", line 94, in <module>
print(d[str[:3]]) KeyError: 'AGC'
def find_value(d, key):
# check if complete key
if key in d:
return d[key]
# check if in a key list
for k, v in d.items():
if isinstance(k, tuple) and key in k:
return d[k]
print(find_value(d, "AGC"))
>>> S
print(find_value(d, "UGG"))
>>> W