1、程式控制結構概述
基礎程式控制結構有三種,順序結構、分支結構、回圈結構,任何程式都以這三種結構為基礎,
順序結構就是程式以單線性順序從開頭至末尾依次執行的結構,中間沒有任何的選擇分支和回圈部分,順序結構是最簡單的程式控制結構,
分支結構就是在一段程式執行程序中,程式判斷資料的情況,根據不同的資料進行不同的操作,這個不同操作的程序就是產生分支,分支結構的基礎是判斷,最常見的是if陳述句建立的分支結構,
回圈結構是指在一段程式執行程序中,某些操作被程式多次重復執行,直到滿足某些條件后,才進行程式的下一步操作,顯然,判斷是跳出回圈的重要前提,建立回圈的陳述句很多,包括for、while等等,
三種基礎程式控制結構是所有程式的基礎,任何編程語言都提供這三種結構,并在此基礎上進行拓展,此節只是簡要介紹,下節將詳細講解分支結構,
2、程式的例外處理
程式的例外處理就是基礎程式控制結構的拓展,在分支結構原理的基礎上,Python增加了例外處理,使用try-except保留字,
例外處理以程式是否例外為判斷條件,根據一段代碼執行的正確性進行程式邏輯選擇,例如在一段要求用戶輸入數字的程式中,用戶輸入了非數字字符,程式并不會因此停止,此時程式就是例外執行狀態,例外狀態的程式往往得不到預期的結果,因此對程式例外狀態的判斷和判斷之后的處理就顯得尤為重要,
Python語言提供try和except進行例外處理,基本的語法格式如下:
try:
<陳述句塊1>
Except:
<陳述句塊2>
陳述句塊1是程式正常情況下執行的陳述句,陳述句塊2是在程式發現例外情況時執行的陳述句,如上面的例子用代碼實作為:
try:
num = eval(input("請輸入數字:"))
print("輸入的數字是:{}".format(num))
except:
print("輸入的不是數字")
#輸出情況如下:
#輸入數字時
請輸入數字:2
輸入的數字是:2
#輸入非數字時
請輸入數字:阿松大
輸入的不是數字
除了在輸入時判斷,例外處理在程式中也可以發揮重要作用,例如下例中,出現0做除數的錯誤情況,就可以使用例外處理避免,
try:
for i in range(5):
print(5/i)
except:
print("出錯了 ")
#輸出結果為:
出錯了
在例外處理中,try-except還可以結合具體的錯誤進行針對性的處理,在except后面指明錯誤型別,對于除數為0這一情況,可以在except后面增加ZeroDivisionError,僅僅指定改型別的錯誤,并對其他例外增加except處理,
try:
for i in range(5):
print(5/i)
except ZeroDivisionError:
print("出錯了,是因為除數為0")
except:
print("出錯了,但不是因為除數為0")
#輸出結果為:
出錯了,是因為除數為0
只要程式有可能例外退出,無論哪種型別,都可以用try-except捕捉例外,使程式有更好的穩定性和更優質的用戶體驗,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/261980.html
標籤:其他
