初始化一个两行三列的全0矩阵
第一种(坑)
dp=[[0]*3]*2
print(dp) #[[0, 0, 0], [0, 0, 0]]
print(id(dp[0])) #1600777573256
print(id(dp[1])) #1600777573256
这一种方法创建出来的每一行id都是一样的,所以改变某列的值时所有列都会改变(比如改变dp[1][1],dp[0][1]也会被改变)
第二种(正确)
dp2=[[0]*3 for _ in range(2)]
print(dp2) #[[0, 0, 0], [0, 0, 0]]
print(id(dp2[0])) #1600778942216
print(id(dp2[1])) #1600778886152
通过for循环创建出来的每一列都是独立的,可以分别改变