偶然发现了for…else…这种用法,使用这个实现了break跳出嵌套的for循环
In [31]: for i in range(1,5):
...: for j in range(5,10):
...: print(i,j)
...: if j==6:
...: break
...: else:
...: continue
...: break
1 5
1 6
- for…else…的运行逻辑是当for循环正常执行结束就会运行其else语句,如果中途break的话,就不会执行else中的内容
- 上面的代码实现了内存for循环break跳出了外层的for循环,当内层for循环正常执行时,会执行else中的continue,此时会跳过外层的break语句,实现外层的循环,当内层出现break语句时,else语句忽略,跳出内层循环,顺序执行外层的break语句,跳出外层循环