第一次看见这种写法还以为是语法错误,结果在官方文档里才看见着实是有这种语法
下面给个示例
for i in ["a", "b", "c", "d", "e"]:
for a in range(3):
if i == "c":
break
print(a)
else:
print(i)
continue
break
# 0 1 2 a 0 1 2 b
当与else同一级的for循环正常结束时才会执行else内的语句,如果for循环被break了则不会执行else内的语句;
对于while-else语句即当while循环条件为假时才会执行else内的语句,当while语句被break的时候则不会执行else里的语句。