Python初學6 程式的分支結構

2021-10-18 16:33:00 字數 3480 閱讀 4966

目錄

一、單分支結構( if )

二、二分支結構( if-else )

2.1 鬆散結構

2.2 緊湊結構

三、多分支結構( if-elif-else )

四、條件判斷及組合( >、=、<=、!=、and、or、not )

五、程式的異常處理

5.1 異常處理方式1( try-except )

5.2 異常處理方式2( try-except )

5.3 異常處理方式3( try-except-else-finally )

六、「身體質量指數bmi」例項

單分支結構程式框架:

if 《條件》 :

《語句塊》

單分支結構流程圖表示:

二分支鬆散結構程式框架:

if 《條件》 :

《語句塊1>

else :

《語句塊2>

二分支鬆散結構流程圖表示:

二分支緊湊結構程式框架:

《表示式1> if 《條件》 else 《表示式2>

注:表示式不同於語句,表示式1、2中不應出現賦值操作。

二分支緊湊結構流程圖表示:

多分支結構程式框架:

if 《條件1> :

《語句塊1>

elif 《條件2> :

《語句塊2>

elif 《條件3> :

《語句塊3>

elif 《條件n-1> :

《語句塊n-1>

else :

《語句塊n>

注:條件1 ~ n-1間有包含關係、先後關係。

多分支結構流程圖表示:

表4-1 條件判斷操作符

操作符判斷說明

>

大於<

小於==

等=大於等於

<=

小於等於

!=不等於

表4-2 同於條件組合的3個關鍵字及使用

關鍵字及使用

說明x and y

條件 x、y 的邏輯與,返回 true 或 false

x or y

條件 x、y 的邏輯或,返回 true 或 false

not x

條件 x 的邏輯非,返回 true 或 false

異常區別於錯誤,錯誤有演算法邏輯錯誤、程式語法錯誤。

而異常是程式在執行過程中遇到的意料之外的情況,比如:開啟乙個不存在的檔案、新建乙個已經存在的檔案、訪問網路檔案時突然斷網、程式設計輸入數值而使用者故意輸入字串等。

沒有異常處理的情況下,程式遇到異常會退出並提示異常資訊。

try :

《語句塊1>

except :

《語句塊2>

注:若程式執行無異常,則執行語句塊1,不執行語句塊2;若執行語句塊1的過程中遇到異常,則不再繼續執行語句塊1,跳轉並執行語句塊2(語句塊2響應語句塊1中遇到的所有異常)。

try :

《語句塊1>

except 《異常型別的名稱》 :

《語句塊2>

注:

1. 若程式執行無異常,則執行語句塊1,不執行語句塊2;若執行語句塊1的過程中遇到 except 指定的異常,則不再繼續執行語句塊1,跳轉並執行語句塊2(語句塊2只響應語句塊1中遇到的 except 指定的異常);若執行語句塊1的過程中遇到非 except 指定的異常,則程式停止執行,並在異常語句處報錯。

2. 異常型別的名稱是python中預定義的,可以直接使用,而不用自定義。

try :

《語句塊1>

except :

《語句塊2>

else :

《語句塊3>

finally :

《語句塊4>

注:

1. 語句塊1無異常 -> 繼續執行完語句塊1 -> 跳轉並執行完語句塊3 -> 跳轉並執行完語句塊4

2. 語句塊1發生異常 -> 終止執行語句塊1 -> 跳轉並執行完語句塊2 -> 跳轉並執行完語句塊4

身體質量指數bmi(body mass index),定義:

其中,bmi 為身體質量指數,單位千克每平方公尺(kg/m2);m 為人的體重,單位千克(kg);l 為人的身高,單位公尺(m)。

表6-1 bmi健康情況參考表 分類

國內bmi值(kg/m2)

國際bmi值(kg/m2)

偏瘦< 18.5

< 18.5

正常18.5 ~ 24

18.5 ~ 25

偏胖24 ~28

25 ~ 30

肥胖≥ 28

≥ 30

**示例:

try :

height, weight = eval(input("請輸入你的身高數值(公尺)和體重數值(千克),用英文逗號隔開:"))

bmi = weight / pow(height, 2)

print("你的身體質量指數bmi為:".format(bmi))

zn, en = "", ""

if bmi < 18.5 :

zn, en = "偏瘦", "偏瘦"

elif 18.5 <= bmi < 24 :

zn, en = "正常", "正常"

elif 24 <= bmi < 25 :

zn, en = "偏胖", "正常"

elif 25 <= bmi < 28 :

zn, en = "偏胖", "偏胖"

elif 28 <= bmi < 30 :

zn, en = "肥胖", "偏胖"

else :

zn, en = "肥胖", "肥胖"

print("國內bmi指標為:{}\n國際bmi指標為:{}".format(zn, en))

except :

print("未輸入正確的身高或體重,請重新執行程式再次輸入。")

執行結果:

Python初學(6) Python的函式

這一篇筆記,學習python 的函式函式基礎 函式相關的語句和表示式 語句 例子calls myfunc spam eggs meat ham def,def adder a,b 1,c return return a b c 0 global def changer global x x new ...

Python初學7 程式的迴圈結構

目錄 一 遍歷迴圈 for in 1.1 程式框架 1.2 遍歷迴圈應用 計數 特定計數 字串 列表 檔案 二 無限迴圈 while 三 迴圈控制關鍵字 break continue 四 迴圈高階用法 for in else while else 遍歷迴圈結構程式框架 for 迴圈變數 in 遍歷結...

Python程式的分支結構 異常處理

1 單分支結構 根據判斷條件結果而選擇不同向前路徑的執行方式 if 條件 語句塊 2 二分支結構 if true print 語句塊1 else print 語句塊2 緊湊形式 適用於簡單表示式的二分支結構 表示式1 if 條件 else 表示式2 guess eval input print 猜 ...