我有這樣的元素的列表:如何將Python整數列表轉換爲列表列表?
[1,2,3,4]
我需要將它們轉換成列表的列表,因爲輸出是這樣的:
[[1],[2],[3],[4]]
...我已經尋找使用map
一些答案函數或使用list
關鍵字,但會拋出一個錯誤,指出該整數不可迭代。
有關如何做到這一點的任何建議?
我有這樣的元素的列表:如何將Python整數列表轉換爲列表列表?
[1,2,3,4]
我需要將它們轉換成列表的列表,因爲輸出是這樣的:
[[1],[2],[3],[4]]
...我已經尋找使用map
一些答案函數或使用list
關鍵字,但會拋出一個錯誤,指出該整數不可迭代。
有關如何做到這一點的任何建議?
您可以使用列表解析創建列表清單:一個整數x
將無法正常工作調用list()
(爲你的國家)
>>> list(map(lambda x: [x], l)) # list() not needed in Python 2
[[1], [2], [3], [4]]
:
>>> l = [1,2,3,4]
>>> [[x] for x in l]
[[1], [2], [3], [4]]
或者,map
因爲整數不是可迭代的(不像字符串或元組),您需要通過編寫[x]
來創建一個包含x
的列表。
即使如此,在字符串或元組上執行時,它也不會執行問題中所期望的內容。 – 2014-11-04 20:57:49
的NumPy的功能atleast_2d也可以使用,e.g:
>>> from numpy import atleast_2d
>>> a = [1, 2, 3, 4]
>>> atleast_2d(a).T
array([[1],[2],[3],[4]])
請告訴我們你試過到目前爲止一些代碼。 – SBH 2014-11-04 20:50:32
地圖(lambda x:[x],l)正在爲我工作。 – 2014-11-05 21:15:53