my_list
[('cat', 1), ('dog', 2), ('cat', 2)]
我想循环遍历my_list中元组的第二个参数(整数),看它们中的任何一个等于说value = 1,如果是,则返回包含value = 1的元组的第一个参数。 / p>
from operator import itemgetter
for a in map(itemgetter(1), my_list):
if a == 1:
idx = map(itemgetter(1),my_list).index(a)
print map(itemgetter(0),my_list)[idx]
#cat
是否有更有效的方法来完成上述工作?
答案 0 :(得分:3)
您可以使用列表理解:
result = [ x for x,y in my_list if y==1 ]