每当我更新newnumber[index]
时,number[index]
也会更新,即使我没有更新它。
以下是我的代码供进一步参考:
number = [1]
newnumber = [1]
row = int(input("Enter the desired number of rows: "))
for i in range(row):
print("\n\nFor loop", i)
print("The number: ", number)
for i in range(len(number) - 1):
newnumber[i+1] = number[i] + number[i+1]
print("number",i, "is equal to", number[i])
print("number",i + 1, "is equal to", number[i+1])
print("newnumber",i + 1, "is equal to", newnumber[i+1])
newnumber.append(number[0])
print("The newnumber: ", newnumber)
number = newnumber
我得到的输出是:
For loop 1
The number: [1, 1]
number 0 is equal to 1
number 1 is equal to 2
newnumber 1 is equal to 2
The newnumber: [1, 2, 1]
正如您所看到的,我正在尝试通过添加newnumber[1]
和number[0]
来更新number[1]
。但是,数字1也在更新,因此输出错误。这是为什么?我认为newnumber[1]
和number[1]
以某种方式连接,因此当更新newnumber[1]
时,number[1]
也会更新。
我是编程perse的新手,看到python更适合新手。我已经完成了我的研究,但发现它更多的是复制整个列表而不是特定的索引。