【基礎05】【自學筆記】條件if-迴圈for-迴圈while語句
阿新 • • 發佈:2021-12-17
一、條件語句:if
如果滿足條件 A,則執行程式碼塊 a,否則執行程式碼塊 b。類似這樣的控制流程語句,稱之為條件語句。
1、舉例:
>>> age = 20 >>> if age >=18: ... print("已經是成年人") ... else: ... print("還是未成年人") ... 已經是成年人
2、多條件語句
舉個最簡單的例子
>>> score = 75 >>> >>> if score >=90: ... print("優秀") ... elif score >= 80: ... print("良好") ... elif score >= 70: ... print("一般") ... elif score >= 60: ... print("合格") ... else: ... print("不合格") ... 一般
3、判斷的條件
在 Python 中,值可以分為
-
假值
:None、空列表、空集合、空字典,空元組、空字串、0、False 等 -
真值
:非空列表、非空集合、非空字典,非空元組、非空字串、非 0 數值、True 等
>>> aint = 1 >>> if aint: ... print("ok") ... ok
4、多條件組合
多條件語句
-
如果一個 if 條件需要同時滿足多個條件,那麼可以使用
and
或者&
-
如果一個 if 條件只需要滿足多個條件的其中一個,那麼可以使用
or
或者|
-
如果一個 if 要求不滿足某個條件,那麼可以使用
not
或者!
# 需要同時滿足條件 A 和條件 B if 條件A and 條件B: ... # 只需要滿足條件A或者條件B即可 if 條件A or 條件B: ... # 要求不滿足條件A if not 條件A: ...
二、迴圈語句:for
for 迴圈可以遍歷任何序列的專案,如一個列表或者一個字串。
1. 普通迴圈
for 元素 in 序列物件: 程式碼塊
示例:
>>> phones = ["Apple", "Huawei", "Xiaomi"] >>> for phone in phones: ... print("當前手機是: " + phone) ... 當前手機是: Apple 當前手機是: Huawei 當前手機是: Xiaomi
2. 帶索引迴圈
enumerate
函式:用於將一個可遍歷的資料物件(如列表、元組或字串)組合為一個索引序列,同時列出資料和資料下標
phones = ["Apple", "Huawei", "Xiaomi"] for index,phone in enumerate(phones): print("我的第 {} 把手機是: {}".format((index+1),phone))
結果:
我的第 1 把手機是: Apple 我的第 2 把手機是: Huawei 我的第 3 把手機是: Xiaomi
3. break 中斷
for 迴圈能夠全部迴圈完,但在某些情況下,需要中斷迴圈的執行,中斷迴圈使用的是break
關鍵字。
>>> for i in [0, 1, 2]: ... if i == 1: ... print(f"當前的數是 {i}, 將退出迴圈") ... break ... print("當前的數是 " + str(i)) ... 當前的數是 0 當前的數是 1, 將退出迴圈
4. continue 下一迴圈
不需要把 for 的迴圈體內的程式碼全部執行完畢,這種情況下,可以使用continue
關鍵字,直接進入下一迴圈
>>> for i in [0, 1, 2]: ... if i == 1: ... continue ... print("當前的數是 " + str(i)) ... 當前的數是 0 當前的數是 2
5. for - else 迴圈
先以 continue 為例,所有的迴圈都非常正常,會走到 else 分支
>>> for i in [0, 1, 2]: ... if i == 1: ... continue ... print("當前的數是 " + str(i)) ... else: ... print("迴圈非常正常") ... 當前的數是 0 當前的數是 2 迴圈非常正常
三、迴圈語句:while
迴圈執行某段程式,以處理需要重複處理的相同任務。
其基本形式為:
while 判斷條件: 執行語句
1. 普通的迴圈
age = 1 while age <= 3: print(f"孩子當前 {age} 歲,還不能上幼兒園") age += 1 print("年齡夠了,可以上幼兒園了")
結果:
孩子當前 1 歲,還不能上幼兒園 孩子當前 2 歲,還不能上幼兒園 孩子當前 3 歲,還不能上幼兒園 年齡夠了,可以上幼兒園了
2. 無限的迴圈
使用 while True,而且迴圈體內又沒有 break 或者 走不到 break
age = 1 while True: age += 1
3. while - else 語句
和 for 迴圈一樣, while 迴圈同樣可以加一個 else 分支,當代碼在 while 迴圈體中正常執行完,就會走到 else 分支中。
>>> age = 1 >>> while age <= 3: ... print(f"我已經 {age} 歲了") ... age += 1 ... else: ... print("可以上幼兒園了") ... 我已經 1 歲了 我已經 2 歲了 我已經 3 歲了 可以上幼兒園了
奔跑的蝸牛