2017-04-19 18 views
-1

私は最初の要素が 'tuple1elem1'に等しいすべての2番目の要素を持つ配列を持っていたいと思います。これを効率的に行うにはどうすればよいですか?私は500タプルを持っています。Pythonのタプルから2番目の要素を取得するには?

タプル:

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

私が持っているしたいこと:

array = ['tuple1elem2'] 
+2

可能な複製(http://stackoverflow.com/questions/12142133/how-to-get-first-リスト内の要素の要素) – Vallentin

+0

例では、Hello Worldの2番目の要素はありませんか? – merlin2011

+0

@ merlin2011質問を更新しました。 – Engo

答えて

3

フィルター付きリストの内包を使用してください。

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

タプルの要素には、リストの要素とほとんど同じ方法でアクセスします。あなたは、例えば、それらを解凍できます[?どのようタプルのリストの最初の要素を取得する]

>>> bigtuple = (('tuple1elem1', 'tuple1elem2'), ('tuple2elem1', 'tuple2elem2'), ('tuple3elem1', 'tuple3elem2')) 
>>> array = [ele2 for ele1, ele2 in bigtuple if ele1 == "tuple1elem1"] 
['tuple1elem2'] 
関連する問題