Warm tip: This article is reproduced from serverfault.com, please click

python-不正确的while循环

(python - Incorrect while loop)

发布于 2020-11-28 15:05:53

我希望当其中一个数字达到400万时停止循环。但是它工作不正确。有人可以帮我吗?

number1=0
number2=1
while number1<(4000000):
    number1+=number2
    number2+=number1
    print(number1,number2)

这是我得到的数字:

1 2
3 5
8 13
21 34
55 89
144 233
377 610
987 1597
2584 4181
6765 10946
17711 28657
46368 75025
121393 196418
317811 514229
832040 1346269
2178309 3524578
5702887 9227465
Questioner
illymarev
Viewed
0
David Montgomery 2020-11-28 23:12:57

它工作正常-当number1达到400万时,它停止了。如果问题是打印出的数字超过400万,那么你可能会打破无限循环:

while True:
    number1+=number2
    number2+=number1
    if number1 > 4000000:
        break
    print(number1, number2)