非常簡單的代碼嵌套示例:嵌套for循環python中的意外行爲
所有代碼都會創建一個初始化爲零的列表的列表。 它遍歷列表的行和列,每個位置都有一個值。 由於某些原因,打印最終矢量時,2D列表的最後一行會爲每行重複。
Number_of_channels=2
Coefficients_per_channel=3
coefficient_array=[[0]*Coefficients_per_channel]*Number_of_channels
print coefficient_array
for channel in range(Number_of_channels):
for coeff in range(Coefficients_per_channel):
coefficient_array[channel][coeff]=coeff*channel
print coefficient_array[channel][coeff]
print coefficient_array
輸出:
[[0, 0, 0], [0, 0, 0]]
0
0
0
0
1
2
[[0, 1, 2], [0, 1, 2]]
我居然想到:
[[0, 0, 0], [0, 1, 2]]
任何人有任何想法如何走到這是怎麼回事?
感謝這個,現在我明白了。神聖的廢話,蟒蛇是強大的。 – stanri