如何从Python中的元组获取第二个元素?

问题描述:

我想要一个数组,其中第一个元素等于'tuple1elem1'。我怎样才能有效地做到这一点?我有大约500个元组。如何从Python中的元组获取第二个元素?

元组:

(('tuple1elem1', 'tuple1elem2'), ('tuple2elem1', 'tuple2elem2'), ('tuple3elem1', 'tuple3elem2')) 

我想什么有:

array = ['tuple1elem2'] 
+2

的可能的复制(http://stackoverflow.com/questions/12142133/how-to-get-first-在元组列表中) – Vallentin

+0

在你的例子中,没有第二个元素是Hello World? – merlin2011

+0

@ merlin2011我已经更新了这个问题。 – Engo

使用列表理解与过滤器。

myList = [...] 
output = [x[1] for x in myList if x[0] == 'tuple1elem1'] 

从元组访问元素的方式与列表元素大致相同。例如,您可以解压它们:?如何获得第一个元素的元组的列表]

>>> bigtuple = (('tuple1elem1', 'tuple1elem2'), ('tuple2elem1', 'tuple2elem2'), ('tuple3elem1', 'tuple3elem2')) 
>>> array = [ele2 for ele1, ele2 in bigtuple if ele1 == "tuple1elem1"] 
['tuple1elem2']