python中的break語句與其它語言中的break語句作用相同,用于循環中跳出循環。
python的break語句不能用于除循環外的其它場合,否則會給出“SyntaxError: ‘break’ outside loop.” 的錯誤。
python不支持標簽(Label)循環,以免給程序帶來不必要的復雜性。
其流程圖如下:
i = 0
while i < 5:
print(i)
if i == 3:
break
i += 1
輸出結果:
0
1
2
3
本例中,使用while循環輸出小于5的自然數,但在循環體中有判定條件 i == 3?條件滿足時,將提前退出循環體,因此實際上只輸出了0~3四個自然數。
在Python 3.8.2 shell中的運行情況如下圖所示:
下面的例子使用for循環輸出列表中的值。
h = ['武林網VEVB', 'www.49028c.com', 12, 6421,10031]
cnt = 0
for e in h:
if cnt == 2:
break
print(e)
cnt += 1
輸出結果:
武林網VEVB
www.49028c.com
上面例子中,cnt用于輸出項的計數,當輸出項達到2項時,則退出for循環。在Python 3.8.2 Shell中的運行結果如下圖所示:
當break語句用于嵌套循環時,break僅會退出直接包含break語句的那一層循環。
下面的例子用于演示break語句用于嵌套循環中的用法。
list_tuple = [(1, 2), (3, 4), (5, 6), (7, 8)]
for i in list_tuple:
for j in i:
if j == 5:
break
print(j)
運行結果如下:
1
2
3
4
7
8
上面程序的最外層循環用于循環列表中的每個元組,內層循環用于輸出元組中的每個值。在輸出元組元素時,如果元組中某個元素的值是5時,就不再輸出該元組中的其它值。由于5是第3個元組中的第1個值,這導致了不僅5本身沒有被輸出,元組中的其它值,亦即6也由于break提前結束了內層循環而沒有被輸出,但外層循環仍然會繼續,因此接著輸出了列表中第4個元組中的值。
本文(完)
新聞熱點
疑難解答