小编poo*_*oop的帖子

Python 2.7创建一个多维列表

在Python中,我想要一种直观的方法来创建一个三维列表.

我想要一个(n乘n)列表.因此,对于n = 4,它应该是:

x = [[[],[],[],[]],[[],[],[],[]],[[],[],[],[]],[[],[],[],[]]]
Run Code Online (Sandbox Code Playgroud)

我尝试过使用:

y = [n*[n*[]]]    
y = [[[]]* n for i in range(n)]
Run Code Online (Sandbox Code Playgroud)

这两者似乎都在创建引用的副本.我也尝试过对列表生成器的天真应用,但收效甚微:

y = [[[]* n for i in range(n)]* n for i in range(n)]
y = [[[]* n for i in range(1)]* n for i in range(n)]
Run Code Online (Sandbox Code Playgroud)

我也尝试使用循环迭代地构建数组,但没有成功.我也试过这个:

y = []
for i in range(0,n):
    y.append([[]*n for i in range(n)])
Run Code Online (Sandbox Code Playgroud)

这样做有更简单或更直观的方法吗?

python list-comprehension list python-2.7

17
推荐指数
2
解决办法
9万
查看次数

标签 统计

list ×1

list-comprehension ×1

python ×1

python-2.7 ×1