如何将列表转换为python中的列表列表

时间:2013-09-17 15:53:36

标签: python

这是一个列表示例,我想将其转换为python中的列表列表:

P = [1,2,3,4]

我写了以下代码来解决这个问题:

u=[]
v=[x for x in p]
u.append(v)

我的结果:[[1,2,3,4]]

Result I would like to have: **[[1],[2],[3],[4]]**

有什么建议吗?感谢。

3 个答案:

答案 0 :(得分:6)

只需对列表推导进行一些小调整,然后将x括在括号中,将每个元素放在列表中。

>>> p = [1, 2, 3, 4]
>>> v = [[x] for x in p]
>>> v
[[1], [2], [3], [4]]

答案 1 :(得分:2)

你想要这样的东西:

u = [[x] for x in p]

答案 2 :(得分:1)

正如其他答案所描述的那样,列表理解是一种直截了当的方式,但也有其他选择

>>> map(list,zip(p))
[[1], [2], [3], [4]]

>>> from itertools import izip
>>> map(list,izip(p))
[[1], [2], [3], [4]]