2012-11-29 17 views
-1

我有一些變量如何通過以下方式組合列的數組?

a=[10,12,12,13,15,12,17,15,12,20,10] 
    b=[23,25,27,28,21,24,27,25,24,29,21] 
    c=[20,22,21,24,27,23,23,34,23,30,23] 
    d=[15,17,17,23,24,26,29,25,25,27,12] 
    e=[12,12,12,14,12,13,14,13,12,14,15] 
    f=[10,08,08,07,08,07,08,09,10,06,08] 
    g=[08,05,04,06,07,08,05,04,03,05,06] 

我現在要創建一個使用所有的第一要素,所有的第二個元素陣列等等這樣

p=[10,23,20,15,12,10,08] 
    q=[12,25,22,17,12,08,05] 
    r=[12,27,21,17,12,08,04] 

等..我該怎麼辦做這個?任何幫助,將不勝感激!謝謝!

+1

你爲什麼不把你的第一套作爲清單的列表?那麼這將是更容易的任務。 –

+0

我曾考慮將它們垂直堆疊並使用轉置。但我不知道如何做到這一點,而不使用numpy數組。請幫忙 – user17151

+0

我是新來的蟒蛇對不起。如果我使用列表清單,它會有什麼幫助? – user17151

回答

3

您正在尋找zip

In [25]: zip(a,b,c,d,e,f,g) 
Out[25]: 
[(10, 23, 20, 15, 12, 10, 8), 
(12, 25, 22, 17, 12, 8, 5), 
(12, 27, 21, 17, 12, 8, 4), 
(13, 28, 24, 23, 14, 7, 6), 
(15, 21, 27, 24, 12, 8, 7), 
(12, 24, 23, 26, 13, 7, 8), 
(17, 27, 23, 29, 14, 8, 5), 
(15, 25, 34, 25, 13, 9, 4), 
(12, 24, 23, 25, 12, 10, 3), 
(20, 29, 30, 27, 14, 6, 5), 
(10, 21, 23, 12, 15, 8, 6)] 

或者定義pqr

In [27]: zipped = zip(a,b,c,d,e,f,g) 

In [28]: p,q,r = zipped[0:3] 

In [29]: p 
Out[29]: (10, 23, 20, 15, 12, 10, 8) 

In [30]: q 
Out[30]: (12, 25, 22, 17, 12, 8, 5) 

In [31]: r 
Out[31]: (12, 27, 21, 17, 12, 8, 4) 

順便提一下,Python中的號碼以0開始被解釋爲一個八進制數(8位數字)。所以08是一個SyntaxError。

+0

太棒了。正是我所需要的,非常感謝 – user17151