我有一个列表,如下所示: [['A',35],['B',74],['C',21],['D',2]]
我想根据第二部分找到列表的第一部分。
例如,我知道我想通过使用21来获得'C'。我知道第二部分(21)并且想要使用它来获得第一部分('C')。最好的方法是什么?
答案 0 :(得分:2)
您应该使用字典:
mylist = [['A', 35], ['B', 74], ['C', 21], ['D', 2]]
newdic = dict((y,x) for x,y in mylist)
print(newdic[21])
答案 1 :(得分:2)
这与雅克的答案类似:
d = {v: k for k, v in [['A', 35], ['B', 74], ['C', 21], ['D', 2]]}
这就像是一个反向词典理解,但在大多数情况下变得更快,因为你没有使用dict
函数,而是使用文字语法{}
。
答案 2 :(得分:1)
解决此问题的最佳方法是使用dictioary而不是list。字典被定义为一对key:value,你可以运行一行简单的代码来返回字典中相应的avalue键