我只是想用 Python 为欧拉问题 15 ( https://projecteuler.net/problem=15 ) 编写关于格子路径的代码。
我想写一些会返回 (1,2,1), (1, 3, 3, 1), (1, 4, 6, 4, 1) 等的东西。我写了以下内容:
lijst = [1,1]
temp = [1,1]
for a in range(2,21):
temp.append(1)
for b in range(1,a):
temp[b] = lijst[b-1] + lijst[b]
lijst = temp
print a, lijst
令我惊讶的是,这没有用。在第二个“for”循环开始时,不知何故,追加不仅适用于“temp”,也适用于“lijst”。我通过更改使代码工作:
lijst = temp
进入:
lijst = [a for a in temp]
听到什么问题?我在列表的行为上遗漏了什么吗?
谢谢!