二維陣列在使用要特別小心
a=[[0]*4 for i in range(3)]
print(a) #[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
print(id(a[0]),id(a[1])) #2251926994752 2251926769536
指向不同 address
b=[[0]*4]*3
print(b) #[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
print(id(b[0]),id(b[1])) #2377476734080 2377476734080
指向同一 address 即b[0]=b[1]=b[2]
c=[1,2,3]*4
print(c) #[1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3]
print(id(c[0]),id(c[1])) #140719996314744 140719996314776
這個是重複內容不是陣列
rows, cols = 3, 4 #[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
m = [[0 for _ in range(cols)] for _ in range(rows)] #2224938054720 2224938532416
print(m)
print(id(m[0]),id(m[1]))
===========================