在Python中,else子句不仅可以与for循环一起使用,还可以与while循环一起使用。它们的工作原理是相似的,当循环正常结束(即没有被break语句打断)时,else子句会被执行。
1. for 循环与 else
当for循环正常完成所有迭代时,else子句会被执行;如果循环被break语句中断,则不会执行else子句。
for i in range(5):
if i == 3:
break
print(i)
else:
print("for loop completed without break")
# 输出:
# 0
# 1
# 2
# 请注意:“for loop completed without break”不会被打印,因为循环在i == 3时被break打破。
2. while 循环与 else
类似地,当while循环正常完成(即条件变为False且没有被break中断)时,else子句会被执行。
x = 0
while x < 5:
if x == 3:
break
print(x)
x += 1
else:
print("while loop completed without break")
# 输出:
# 0
# 1
# 2
# 请注意:“while loop completed without break”不会被打印,因为循环在x == 3时被break打破。
正常执行 else 子句的例子:
for 循环:
for i in range(5):
print(i)
else:
print("for loop completed without break")
# 输出:
# 0
# 1
# 2
# 3
# 4
# for loop completed without break
while 循环:
x = 0
while x < 5:
print(x)
x += 1
else:
print("while loop completed without break")
# 输出:
# 0
# 1
# 2
# 3
# 4
# while loop completed without break
小结
- 在
for循环中,else子句在没有被break打断的情况下执行。 - 在
while循环中,else子句也在没有被break打断的情况下执行。
请注意,虽然else子句可以与for和while循环一起使用,但在实际开发中并不是很常见,尤其是对于初学者来说,它可能显得有点晦涩。理解这一点可以帮助你在阅读和编写Python代码时更好地掌握其语法结构。
本文详细介绍了Python中for循环和while循环与else子句结合使用的场景及工作原理。当循环正常完成所有迭代而未被break语句中断时,else子句将被执行。
1080





