这是我对Stackflow的第一个问题。 我想创建一个高度为'n'的帕斯卡三角形。 这是我的代码:
nb = input('input lines: ')
nb = int(nb)
array = [([1]+[0]*(nb-1))]*nb
for i in range(1, nb):
for j in range(1 ,nb):
array[i][j] = array[i-1][j-1] + array[i-1][j]
我想得到:
[1, 0, 0, 0, 0]
[1, 1, 0, 0, 0]
[1, 2, 1, 0, 0]
[1, 3, 3, 1, 0]
[1, 4, 6, 4, 1]
但是结果是这样的:
input lines: 5
[1, 4, 10, 20, 35]
[1, 4, 10, 20, 35]
[1, 4, 10, 20, 35]
[1, 4, 10, 20, 35]
[1, 4, 10, 20, 35]
我不明白为什么每一行都变成相同的内容。特别是我从第二行的第二个元素开始递归。
有人可以用我的代码解释这个问题。 非常感谢