通过for -- else 完成,如果break 是不会走else语句的,可以基于此点判断for循环是否被中断了
In [38]: for i in range(10):
...: print(i)
...: else:
...: print("未中断", i)
...:
0
1
2
3
4
5
6
7
8
9
结束 9
In [39]: for i in range(10):
...: print(i)
...: if i == 3:
...: break
...: else:
...: print("未中断", i)
...:
0
1
2
3
还有一种方法:
In [41]: is_break = False
In [42]: print(is_break)
False
In [43]: for i in range(10):
...: print(i)
...: if i == 3:
...: is_break = True
...: break
...:
0
1
2
3
In [44]: print(is_break)
True