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:結束本次循環,繼續下一次循環