i = 1
while i <=5:
print (i)
i=i + 1
print ("ok")
所以这不是我的代码,而是关于sololearn的python教程
它应输出:
1
2
3
4
5
然后停止
但是当我这样做时,我得到一个1的循环
1
1
1
1
1
我认为这不是核心
所以我得到的是我在改写过程中犯了错误(我肯定已经纠正过)或者这个代码是错误的代码在应用程序中被错误地使用了
或者更改了python版本,所以这不再起作用了
答案 0 :(得分:5)
修复缩进。当i = i + 1
不在循环中时会发生这种情况。
您正在运行此代码,该代码无限运行并打印1
:
i = 1
while i <= 5:
print(i)
i=i + 1
print("ok")
但你想要这个:
i = 1
while i <= 5:
print(i)
i = i + 1
print("ok")
此外,始终使用四个空格来缩进Python代码。这样,当缩进错误时,它会更加明显。
答案 1 :(得分:0)
由于某种原因,递增i
的行未在循环中执行。有几个可能的原因:
也许该行不在您的源代码中。请确认该行是否存在。
也许这条线被注释掉了。 Python程序中的注释字符为#
。确保该字符不会出现在该行的任何位置。
也许,在我看来这是最有可能的,这条线没有正确缩进。在Python中,缩进很重要。循环体必须比while
行缩进。未缩进的第一行标记循环的结束。确保您的代码不是这样的:
i = 1
while i <=5:
print (i)
i=i + 1
print ("ok")