【发布时间】:2017-12-02 13:34:39
【问题描述】:
我写了以下代码:
def incr_num(x, y):
while x <= y:
print x
incr_num(x+1, y)
当我将其调用为
incr_num(1, 10)
它进入一个无限循环并给出以下输出:
1
2
3
4
5
6
7
8
9
10
10
10
10
10
10
10
(number 10 keeps repeating)
我期待它打印数字 1-10。我无法理解为什么它没有。谁能告诉我为什么会这样。
我正在使用python2.7。
【问题讨论】:
-
因为你永远不会改变
x,所以while x <= y总是正确的。 -
无限递归,还是无限while循环?
-
用 if 代替 while
-
出色的标题。板球当然做到了。
-
应该输出是什么?