前言 還有多少人不會python的控制結構,在評論區告訴我,讓我一個個點名提問。今天,就教會你python的控制結構… 分行與縮進 分行 •一條語句占用一行 •過長的語句可以占用多行,使用\或()控制換行 •[]、{}、()可以直接跨越多行,在列表、字典、元組中需要換行的時候也可以不用添加續行符 a ...
前言
還有多少人不會python的控制結構,在評論區告訴我,讓我一個個點名提問。今天,就教會你python的控制結構…
分行與縮進
分行
•一條語句占用一行
•過長的語句可以占用多行,使用\或()控制換行
•[]、{}、()可以直接跨越多行,在列表、字典、元組中需要換行的時候也可以不用添加續行符
a = 1 b = 2 c =a +b income = (gross_wages +taxable_interest - ira_deduction)
縮進
•四個英文空格
•同一代碼塊的語句縮進長度要相等
•源文件的第一行不需要縮進
python學習交流Q群:906715085### if 條件表達式: 執行語句 ...... else: 執行語句1 ......
順序結構
•按照從上到下的順序,一條語句一條語句的執行
◾最基本的結構
◾代碼自上而下,依次執行
◾按照解決問題的順序寫出相應的語句即可
開始
把冰箱門打開
把大象裝冰箱
把冰箱門關上
結束
選擇結構
根據判斷再執行決定內容
•使用if…else…語句表示
把冰箱門打開 if 大象能裝入: 把大象裝冰箱 else: 去找一個更大的冰箱 把冰箱們關上
•通過一條或多條語句的執行結果(True或False)來決定執行的代碼塊
•基本形式為if…else…語句
◾if條件語句與else後均有冒號
◾語句都要在if和else語句之後的代碼塊要縮進
◾判斷條件常用>、<、==、>=、<=
◾判斷條件為真時,執行代碼塊1
◾判斷條件不成立時,執行代碼塊2
單分支、雙分支、多分支結構
單分支
•只有一個if語句
◾如果條件正確就執行一個單向if語句
◾當且僅當條件為True時,才執行對應的操作
if salary >= 10000: print("I am Happy!")
雙分支
•if-else語句根據判斷條件真假決定執行哪個動作
◾如果判斷條件為True時,則執行if語句下的代碼塊
◾如果判斷條件為False時,執行else語句下的代碼塊
if salary >= 10000: print("I am Happy") else: print("I am Fine!")
多分支
•實現更精細的條件判斷
◾elif是else if 的縮寫,可以有多個elif
◾elif是更精細的判斷條件,並且以冒號結束
◾條件判斷從上到下匹配,當滿足條件時執行對應的塊內語句,後續的elif和else都不再執行
◾此時要註意條件順序
if salary >= 10000: print ("happy") elif salary >= 5000: print("ok") else: print("sad")
迴圈結構
while迴圈
•只要條件滿足,就一直迴圈
◾在某條件下,迴圈執行某段程式,用於處理重覆相同的任務
◾while語句後有冒號
◾判斷條件為真時,執行代碼塊1,代碼需要縮進
◾判斷條件為假時,執行代碼塊2,代碼應取消縮進
◾註意防止死迴圈產生
while 判斷條件: 代碼塊1 代碼塊2
for-in迴圈
•方法1:使用range()函數
◾for語句最後有冒號
◾迴圈中的語句需要縮進
◾range()函數可創建一個整數列表,一般與for迴圈結合使用
range(start, end, step=1) range(5): 0,1,2,3,4 沒有5 range(1,5):1,2,3,4 沒有5 range(1,5,2): 1,3
•for 變數名 in range(5)
patients = ["Alice","Bob","Cathy","Eric"] for index in range(len(patients)): print(index,patients[index]) 結果: 0 Alice 1 Bob 2 Cathy 3 Eric
•方法2:使用序列項迭代列表對象
◾直接把序列中的每個元素迭代出來
◾for語句最後要有冒號
◾迴圈中的語句需要縮進
◾把每個元素代入變數x,然後執行縮進的代碼塊
for x in sequence 代碼塊 patients = {"Alice","Bob","Cathy","Eric"} for patient_name in patients: print(patient_name) 結果: Alice Bob Cathy Eric
•方法3:使用枚舉函數迭代序列對象
for index,x in enumerate(sequence): 代碼塊
•enumerate()函數將序列對象轉換為一個索引序列,並返回序列對象的索引和元素
◾Index為返回的索引計數(從0開始)
◾x為返回的序列元素
patients = ["Alice","Bob","Cathy","Eric"] for index,patient_name in enumerate(patients): print(index,patient_name) 結果: 0 Alice 1 Bob 2 Cathy 3 Eric
break&continue
break
•用在while和for迴圈中
•用於提前退出迴圈
•通常配合if語句使用
continue
•用於while和for迴圈
•跳過當前的這次迴圈,直接開始下一次迴圈
•通常配合if語句使用
不要濫用break和continue語句
•break和continue會造成代碼執行邏輯分叉過多,容易出錯
•大多數迴圈並不需要用到break和continue語句
如果代碼寫的有問題,會讓程式陷入”死迴圈“,可以使用Ctrl+C退出程式,或者強制結束python進程
最後
今天的分享到這裡就結束了,喜歡的記得點贊收藏,下一章見啦!!!!