如何反轉python中的矩陣列表。如何反轉多行Python列表
EG我:
example= [1,2,3],
[4,5,6],
[7,8,9]
我想扭轉每一行得到如下:
example_reversed = [3,2,1],
[6,5,4],
[9,8,7]
的感謝!
如何反轉python中的矩陣列表。如何反轉多行Python列表
EG我:
example= [1,2,3],
[4,5,6],
[7,8,9]
我想扭轉每一行得到如下:
example_reversed = [3,2,1],
[6,5,4],
[9,8,7]
的感謝!
您可以使用列表中理解和反向索引:
>>> a=[[1,2,3],[4,5,6],[7,8,9]]
>>> [i[::-1] for i in a]
[[3, 2, 1], [6, 5, 4], [9, 8, 7]]
通過使用map,你可以完全消除列表理解。 – 2015-03-31 20:10:04
嘿@Kasra你真的很有幫助。你能否看到你是否可以回答我編輯的問題?謝謝! – Scientized 2015-04-01 05:55:05
@renegade你應用什麼樣的編輯問題? – Kasramvd 2015-04-01 06:51:27
地圖的reversed
功能,每個項目:
newList = map(list, map(reversed, example))
它真的與Python2一起工作嗎?在Python3中,我認爲整個表達式應該被封裝在一個'list(...)'中。 – 2015-03-31 20:09:40
我使用Python 2,所以是的。 Reverse會返回一個迭代器,您可以將其轉換爲列表或保持原樣。自己嘗試一下。 – 2015-03-31 20:11:08
你的矩陣目前似乎被存儲在一個元組,是不是它?
無論如何,你可以試試:
list(list(reversed(i)) for i in example)
但是,如果你需要做很多的計算與矩陣你應該考慮使用NumPy的。
這應做到:
[list(reversed(L)) for L in example]
編輯:唉。太慢了,顯然。
這是應該發生的地方?他們也是numpy數組還是存儲在什麼地方? – 2015-03-31 20:11:39