我试图将一个数字附加到二维数组中的每个数组上,而不是仅将一个数字附加到所有数组上。
到目前为止,当h为5时,我的代码如下:
output = [[]]*h
for j in range(h):
output[j].append(j)
这给了我
[[0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4], [0, 1, 2, 3, 4]]
但是,如果我将第一行更改为:
output = [[],[],[],[],[]]
它给了我正确的输出:
[[0], [1], [2], [3], [4]]
但是h的值可以改变(取决于用户输入)
我不明白为什么我得到错误的答案,因为[[]]*h
和[[],[],[],[],[]]
是同一件事。