2011-01-27 184 views
1

例的列表:如何訪問每個列表的第一個元素列表

numbers = ['1','2','3'] 
letters = ['a','b','c'] 

我想要得到[1,作爲一個結果。是的,我可以通過它循環,但我想知道是否有快速的一行這樣做。

編輯編輯!!!!

我在描述問題時犯了一個可怕的錯誤。

我有權訪問所述組合列表(問題的列表的列表):

list_of_lists = [ numbers, letters] 

其等於:

[ ['1','2','3'],['a','b','c']] 

很抱歉的混亂。最終結果仍然相同,這將是['1','a']。

+1

http://stackoverflow.com/questions/2054416 /獲取最第一元素的每行中-an陣列合蟒。其他人在你之前要求回答同樣的家庭作業問題。 – 2011-01-27 20:19:48

+2

列表在哪裏? – Benjamin 2011-01-27 20:23:22

+1

您的問題與某些更大的背景有關,如果需要請詳細說明。剛剛評論,因爲你是指循環,但顯然你正在尋找的解決方案doesen't不需要任何循環,謝謝 – eat 2011-01-27 20:48:15

回答

7

嘗試list comprehension

# (numbers, letters) can be replaced with `list_of_lists` 
>>> [ x[0] for x in (numbers, letters) ] 
['1', 'a'] 
0
list_of_lists = [['1', '2', '3'], ['a', 'b', 'c']] 
list_of_firsts = [l[0] for l in list_of_lists] 
2
import operator 
map(operator.itemgetter(0), [numbers, letters]) 
-1

我會嘗試:

zip(*list_of_lists)[0] 
相關問題