我的问题是,为什么while循环中有诸如“ else”子句之类的东西。例如,我的代码如下:
a = 100
turns = 0
while a > 0:
if func(a, b): #Function returns boolean value
a -= 1
turns += 1
else:
a -= 2
turns += 1
else:
print(turns)
问题是,这与以下语法有何不同?
a = 100
turns = 0
while a > 0:
if func(a, b): #Function returns boolean value
a -= 1
turns += 1
else:
a -= 2
turns += 1
print(turns)
答案 0 :(得分:0)
区别在于它如何处理异常退出循环,例如break
:
while True:
break
else:
print("not printed")
print("printed")
这同样适用于循环体内引发的异常。