例子
上几段代码你就会理解了
for i in range(6):
if i % 3 == 0:
print(i)
#break
else:
print("我执行到else了耶")
print("for-else后续代码")
#以上代码,当缺少break关键字时,程序的执行结果是:
0
3
我执行到else了耶
for-else后续代码
for i in range(6):
if i % 3 == 0:
print(i)
break
else:
print("我执行到else了耶")
print("for-else后续代码")
#以上代码,程序的执行结果是:
0
for-else后续代码
for i in range(6):
if i >= 6:
print(i)
break
else:
print("我执行到else了耶")
print("for-else后续代码")
#以上代码,程序的执行结果是:
我执行到else了耶
for-else后续代码
总结
for else 的执行顺序为:
- 当迭代对象完成所有迭代后且此时的迭代对象为空时,如果存在else子句则执行else子句内容,没有else子句则继续执行后续代码;如果迭代对象因为某种原因(如带有break关键字)提前退出迭代,则else子句不会被执行,程序将会
直接跳过else子句
继续执行后续代码 - for else 中else的缩进一定要和for对齐!
while else
也有这样的用法!