第八章 程序的分支結構


單分支結構:根據判斷條件結果而選擇不同向前路徑的運行方式

if <條件>:
    <語句塊>

其原理效果如下圖所示:

如果條件正確則執行語句塊,否則不執行。

單分支結構示例:

1 guess=eval(input())
2     if guess==99:
3         print("猜對了")
1 if True:
2     print("條件正確")

二分支結構:根據判斷條件結果而選擇不同向前路徑的運行方式

1 if <條件>:
2 
3   <語句塊1>
4 
5 else:
6 
7   <語句塊2>

二分支結構的原理圖如下:

如果條件正確則執行語句塊1,否則執行語句塊2。

二分支結構示例:

1 guess=eval(input())
2 if guess==99:
3     print("猜對了")
4 else:
5     print("猜錯了")
1 if True:
2     print("語句塊1")
3 else:
4     print("語句塊2")

注意一點:

python中二分支結構還有一個緊湊形式

緊湊形式適用於簡單表達式的二分支結構

<表達式1>if<條件>else<表達式2>

二分支結構的緊湊形式示例如下:

1 guess=eval(input())
2 print("猜{}了".format("" if guess==99 else ""))

多分支結構:

1 if <條件1>:
2   <語句塊1>
3 elif <條件2>:
4   <語句塊2>
5   ........
6 else:
7   <語句塊N>

多分支結構的效果圖如下圖所示:

我們來寫一個對不同分數分級的程序

 1 score=eval(input())
 2 if score >=60:
 3     grade="D"
 4 elif score>=70:
 5     grade="C"
 6 elif score>=80:
 7     grade="B"
 8 elif score>=90:
 9     grade="A"
10 print("輸入成績屬於級別{}".format(grade))
11 ##注意多條件之間的包含關系
12 ##注意變量取值范圍的覆蓋

程序控制結構:

1、順序結構

2、分支結構

3、循環結構

條件判斷及其組合

操作符 數學符號 描述
< < 小於
<= 小於等於
>= 大於等於
> > 大於
== = 等於
!= 不等於

用於條件組合的三個保留字:

操作符及使用 描述
x and y 兩個條件x和y的邏輯與
x or y 兩個條件x和y的邏輯或
not x 條件x的邏輯非

條件判斷及組合示例

1 guess= eval(input())
2 if guess > 99 or guess <99:
3     print("猜錯了")
4 else:
5     print("猜對了")

下面我們來聊聊異常處理的問題

如:下面這段代碼,當用戶沒有輸入整數的時候,會產生異常,怎么處理這個異常?

num =eval(input("請輸入一個整數:"))
print(num**2)

 

 異常處理的基本使用:

1 try:
2     <語句塊1>
3 except:
4     <語句塊2>
try:
    <語句塊1>
except <異常類型>:
    <語句塊2>

異常處理:

示例1

1 try:
2     num=eval(input("請輸入一個整數"))
3     print(num**2)
4 except:
5     print("輸入不是整數")

示例2

1 try:
2      num=eval(input("請輸入一個整數"))
3      print(num**2)
4 except NameError:    #標注異常類型后,僅響應   該異常
5      print("輸入不是整數")

最后來看看異常處理的高級使用方法:

1 try:
2     <語句塊1>
3 except:
4     <語句塊2>
5 else:
6     <語句塊3>    #不發生異常時執行
7 finally:
8     <語句塊4>    #一定執行

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM