我有一个类似的清单
list_a = [(1, 2), (2, 3), (4, 5)]
现在使用这个列表,我想找到一个最后值为 3 的元素,有什么简短的方法可以实现这个吗?它应该返回(2,3)
例如:
In [1]: list_a = [(1, 2), (2, 3), (4, 5)]
In [2]: next(x for x in list_a if x[1] == 3)
Out[2]: (2, 3)
请注意,它返回单个元素,而不是它们的列表(似乎是您要问的)。如果有多个元组,则返回第一个。
for item in list_a:
if item[-1] == 3:
return item
或者,如果您可能想要返回多个值:
return_list = []
for item in list_a:
if item[-1] == 3:
return_list.append(item)
return return_list
像这样简单的东西
for x in list_a:
if x[1] == 3: print x