Python 2.7 python解释器中的无限循环
下面是python官方教程。Python 2.7 python解释器中的无限循环,python-2.7,infinite-loop,python,Python 2.7,Infinite Loop,Python,下面是python官方教程。 我创建了一个fibonacci函数fib(),如教程所示, 给定参数1的函数输出是(令我惊讶的), 无限的0 >>> def fib(n): ... a, b = 0, 1 ... while a < n: ... print a, ... a, b = b, a + b ... >>> fib(0) >>> fib(1) 0 0 0 0 0 0 0 0
我创建了一个fibonacci函数
fib()
,如教程所示,给定参数
1
的函数输出是(令我惊讶的),无限的
0
>>> def fib(n):
... a, b = 0, 1
... while a < n:
... print a,
... a, b = b, a + b
...
>>> fib(0)
>>> fib(1)
0 0 0 0 0 0 0 0 0 0 (...repeats infinitely, had to break out with ^+Z ...)
def fib(n):
... a、 b=0,1
... 而a>>> def fib(n):
... a, b = 0, 1
... while a < n:
... print a,
... a, b = b, a + b
...
>>> fib(0)
>>> fib(1)
0
>>> fib(1)
0
def fib(n):
... a、 b=0,1
... 而a>>> def fib(n):
... a,b = 0,1
... while a < n:
... print a,
... a,b = b, a+b
...
>>> fib(5)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
def fib(n):
... a、 b=0,1
... 而adef fib(n):
[tab]a,b = 0,1
[tab]while a < b:
[tab][4 spaces]print a,
[eight spaces]a,b = b, a+b
def fib(n):
[表]a,b=0,1
[tab]当a
混合使用制表符和空格会使解释器混淆它应该如何解析缩进。因此,a,b=b,a+b
行实际上不在while
循环内,即使它看起来像它。我可以重现这一点:
>>> def fib(n):
... a,b = 0,1
... while a < n:
... print a,
... a,b = b, a+b
...
>>> fib(5)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
def fib(n):
... a、 b=0,1
... 而adef fib(n):
[tab]a,b = 0,1
[tab]while a < b:
[tab][4 spaces]print a,
[eight spaces]a,b = b, a+b
def fib(n):
[表]a,b=0,1
[tab]当a
混合使用制表符和空格会使解释器混淆它应该如何解析缩进。因此,
a,b=b,a+b
行实际上不在while
循环中,即使它看起来像这样。对于像我这样的初学者:使用-t
(或-tt
)选项运行python将生成警告(或错误)对于像我这样的初学者:使用-t
(或-tt
)选项运行python将为不一致的选项卡/空间缩进生成警告(或错误)。