def main():
i = 0
while i<=4:
function1(i)
i += 1
print("i is", i)
def function1(i):
line = " "
while i >= 1:
if i % 3 != 0:
line += str(i) + ' '
#else:
#pass
i -= 1
print(line)
main()
该代码的运行结果显示为如下:
i is 1
1
i is 2
2 1
i is 3
可以看出运行到i=3时,程序陷入死循环
经过分析,发现在
if i % 3 != 0:
line += str(i) + ' '
#else:
i -= 1
这个if判断语句中当i= 3 时进入循环但不执行if语句内容,i不能自减,返回的i还是3,所以这个程序就陷入死循环