[英]Modifying Fibonacci Series in list — Python
我从旨在列出甚至斐波那契数字的列表的程序中得到了意外的结果。 查找所有数字的代码部分可以正常工作,但是当到达
if i % 2 != 0
fib_list.remove(i)
部分似乎出错了,因为它不能消除所有的奇数。 以下是整个程序。 我究竟做错了什么?
fib_list = [1, 2, 3]
for i in range(4, 4000001):
if (i - fib_list[-1] - fib_list[-2]) == 0:
fib_list.append(i)
print fib_list
for i in fib_list:
if i % 2 != 0:
fib_list.remove(i)
print fib_list
您正在修改列表时遍历列表。 不要那样做
[x for x in fib_list if x % 2 == 0]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.