python中创建指定大小的二维数组,有点像C++中进行动态申请内存创建数组,不过相比较而言,python中更为简单一些。

创建n行m列的二维数组:

n = 2
m = 3
matrix = [None]*2
for i in range(len(matrix)):
matrix[i] = [0]*3
print(matrix)

当然也可以使用list comprehension的方式创建:

n = 2
m = 3
matrix = [[0]*m for i in range(n)]
print(matrix)
matrix[0][0] = 1
print(matrix)

对于创建三维甚至三维以上的数组,建议使用第一种方法,依次确定最高维、次高维以及最后一维,如果使用list comprehension会产生浅拷贝的问题。

n = 2
m = 3
k = 4
matrix = [None]*2
for i in range(len(matrix)):
matrix[i] = [0]*3
print(matrix)
for i in range(n):
for j in range(m):
matrix[i][j] = [1]*k
print(matrix)