<重复错误<符号

时间:2015-05-24 19:27:53

标签: debugging sage

所以这是我的圣人计划,用于获取甚至斐波纳契数字小于4000000的列表 但是在for循环行中,<和for循环行重复出错了。符号。
为什么会这样?

list1 = [1,1]
a = 1
b = 1
list2 = []
for b < 4000000:
    b = a + b
    list1 += [b]

for i in list1:
    if i%2 == 0:
        list2 += [i]
print list2

1 个答案:

答案 0 :(得分:1)

问题不在于'&lt;'运算符但使用'for'。它看起来像在圣人中,'for'循环专门迭代固定列表。将'for'替换为'while',您将获得所需的行为。

第二个问题是,'list1'代替Fibonacci序列,最终包含所有整数,因为你永远不会更新'a'。

以上是上述两项修改的解决方案:

list1 = [1,1]

a = 1

b = 1

list2 = []

while b < 4000000:

    temp = a
    a = b
    b = temp + b
    list1 += [b]

for i in list1:

    if i%2 == 0:
        list2 += [i]


print list2