1. 程式人生 > >004_008 Python 行轉化成列,列轉化成行

004_008 Python 行轉化成列,列轉化成行

程式碼如下:

#encoding=utf-8

print '中國'

#二維陣列變換 行轉化成列,列轉化成行
lista=[[1,2,3],[4,5,6],[7,8,9],[10,11,12]]

#使用列表推導
listb=[[r[col] for r in lista] for col in range(len(lista[0]))]

print listb

#map實現 載入記憶體
print map(list,zip(*lista))

#map實現 不載入記憶體
import itertools
print map(list,itertools.izip(*lista))

列印結果如下:

中國
[[1, 4, 7, 10], [2, 5, 8, 11], [3, 6, 9, 12]]
[[1, 4, 7, 10], [2, 5, 8, 11], [3, 6, 9, 12]]
[[1, 4, 7, 10], [2, 5, 8, 11], [3, 6, 9, 12]]