【发布时间】:2017-12-27 09:36:33
【问题描述】:
def nearest_square(limit):
key=0
while key<=limit:
i=0
key=i*i
i+=1
return key
test1 = Nearest_square(40) print("预期结果:36,实际结果:{}".format(test1)) 这个循环会无限运行吗?
【问题讨论】:
-
函数的每一行你看了吗?有一个
key什么都不做,然后在每次迭代中重新定义i。如果您费心将任何精力投入到调试中,您的问题可能已经得到解决。 -
现在问题是正确的,我忘了在key后面写“=0”
-
这不是您的代码的唯一问题...
-
其他是什么
-
进入的一个好习惯是将相关变量的值打印到控制台 - 这会告诉你
i和key没有增加
标签: python loops while-loop infinite-loop