繁体   English   中英

python中while循环的停止点

[英]The stopping point in while loop in python

i=0
>>> while i<3:
...     print i
...     i += 1
... else:
...     print ‘Done with i =’, i
...
0
1
2
Done with i = 3

大家好,我想知道为什么在i = 3而不是i = 2时执行while循环。 当i = 2,i = i + 1 = 2 + 1 = 3时,表达式变为False,然后执行完成。 是不是?

一段while ... elseelse while ... else块始终执行。 因此,您的while循环以i == 2结尾,但随后以i += 1递增,所以i == 3 然后退出while循环,然后执行else块。

else块将始终执行。 这与只写print "Done with i =", i 正如BlivetWidget所说,您要向i加1,然后执行else块。 相反,您可以使用print "Done with i = ", i-1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM