10.python break/continue

  • 2020 年 3 月 12 日
  • 筆記

在昨天的文章:python while循環 文章結尾,我們留下了一個bug,當條件成立時,程式陷入了死循環,如何解決呢?

為了規避這個問題,今天介紹兩個關鍵詞:break和continue

一.break

如果在循環中使用 break ,意味著立即跳出本次循環,直接程式碼演示:

# !usr/bin/env python  # -*- coding:utf-8 _*-  """  @Author:何以解憂  @Blog(個人部落格地址): shuopython.com  @WeChat Official Account(微信公眾號):猿說python  @Github:www.github.com    @File:break_continue.py  @Time:2019/9/19 21:22     @Motto:不積跬步無以至千里,不積小流無以成江海,程式人生的精彩需要堅持不懈地積累!  """     a = 0  while True: # 條件永遠成立,如果沒有break ,死循環         a += 1 # 等價 a = a + 1,a 的值不停的累計加 1      if a == 100:          break  # 當a == 100 ,條件成立時,break 跳出循環,結束程式      print("a = %d" % a)              print("循環結束,退出程式")

輸出結果:

a = 1  a = 2  a = 3  a = 4  ....  a = 96  a = 97  a = 98  a = 99  循環結束,退出程式

上面程式是前一篇文章的程式碼,while  True 死循環,當循環中的條件成立時,立即break退出循環。記住關鍵字break。

二.continue

如果在循環中使用 continue,意味著結束本次循環,繼續下一次循環,直接程式碼演示:

a = 0  while True: # 條件永遠成立         a += 1 # 等價 a = a + 1,a 的值不停的累計加 1      if a == 100:          continue  # 當a == 100 ,條件成立時,continue 繼續下次一循環      print("a = %d" % a)        print("循環結束,退出程式")

輸出結果:

a = 1  a = 2  a = 3  a = 4  ...  a = 96  a = 97  a = 98  a = 99  a = 101  a = 102  a = 103  ....

程式使用continue,再次陷入死循環,各位小夥伴注意到沒有,在程式列印到控制台的時候,99之後就是101,唯獨沒有100。

因為當 a 的值為100時,循環中執行了continue,程式程式碼會直接跳過continue後面的程式碼,回到while循環的最開始

上面同時介紹了break和continue,感受到兩者的區別了嗎?

break是結束循環,當前的while循序停止;continue 是結束本次循環,繼續下一次循環,實際上循環還沒有停止

三.重點總結

while循環中關鍵字break和continue的使用是必不可少的,注意兩者的區別

break:跳出本次循環

continue:結束本次循環,繼續下一次循環