2015-11-04 22 views

回答

3
arr = [list(item) for item in zip(x,y)] 
+0

謝謝!你爲我節省了很多時間。 –

+1

請考慮編輯您的帖子,以添加更多關於您的代碼的解釋以及爲什麼它可以解決問題。一個主要包含代碼的答案(即使它正在工作)通常不會幫助OP瞭解他們的問題。 – SuperBiasedMan

4

您應該使用zip function並將其轉換爲像這樣的列表:

>>> array = list(zip(x, y)) 
[(1, 2), (3, 4), (5, 6)] 

這將創建一個元組列表。請注意,您仍然可以對列表等元組執行正常的索引操作。如果你真的想子列表而不是元組,那麼你應該這樣做:

>>> array = [list(item) for item in list(zip(x, y))] 
[[1, 2], [3, 4], [5, 6]] 
+1

Upvote for the explanation :) –

+2

你應該注意Python 2和3之間'zip()'的行爲差異。 –

-1

如果你是罰款個別聯軸器是元組,這裏是另一番風味:

x = [1,3,5] 
y = [2,4,6] 

print zip(*[x,y]) #prints [(1, 2), (3, 4), (5, 6)] 

當然,你可以修改它成爲:

a = zip(*[x,y]) 
b = [ list(n) for n in a ] #gives: [[1, 2], [3, 4], [5, 6]] 
+0

@downvoter:謹慎解釋爲什麼? – labheshr

相關問題