Python列表初始化的坑
二维列表初始化
L=[[0]*n]*m
方式初始化
- 初始化一个 \(m\times n\) 的二维列表,初值全为0
L=[[0]*3]*2
print("初始的:",L)
#赋值
for i in range(2):
for j in range(3):
L[i][j]=i+j
print("赋值后:",L)
- 输出结果如下:
>>>初始的:
[[0,0,0],[0,0,0]]
>>>赋值后:
[[1,2,3],[1,2,3]]
列表表达式初始化
L=[[0 for _ in range(3)] for _ in range(2)]
方式初始化
L=[[0 for _ in range(3)] for _ in range(2)]
print("初始的:",L)
#赋值
for i in range(2):
for j in range(3):
L[i][j]=i+j
print("赋值后:",L)
- 输出结果如下:
>>>初始的:
[[0,0,0],[0,0,0]]
>>>赋值后:
[[0,1,2],[1,2,3]]