3 try-except-else語句
4 try-except-finally語句
5 自定義異常:raise語句
6 習題
try
: 可能發生異常的**
except:
如果出現異常執行的**
注意:使用except
而不帶任何異常型別,這不是乙個很好的方式,我們不能通過該程式識別出具體的異常資訊,因為它捕獲所有的異常。
try
: 可能發生異常的**
except 異常型別1(exception) as 變數名:
# exception是任何異常型別
出現異常1後執行的**
except 異常型別2(exception) as 變數名:
# exception是任何異常型別
出現異常2後執行的**..
....
注意:使用多個except
**塊時,必須堅持對其規範排序,要從最具針對性的異常到最通用的異常。
【例子】
try
: a =
int(
input
('請輸入除數(分母):'))
b =int(
input
('請輸入被除數(分子):'))
print
(b/a)
print
('異常檢測出來後,繼續執行的**'
)except zerodivisionerror as error:
print
('執行錯誤\n原因是:'
+str
(error)
)except valueerror as error:
print
('執行錯誤\n原因是:'
+str
(error)
)'''
請輸入除數(分母):0
請輸入被除數(分子):9
執行錯誤
原因是:division by zero
-------------------------
請輸入除數(分母):a
執行錯誤
原因是:invalid literal for int() with base 10: 'a'
'''
注意:如果try子句執行過程**現異常,那麼try子句後面的**不會再執行。
try
: 可能發生異常的**
except (異常型別1
,異常型別2,.
..) as 變數名:
捕獲其中乙個異常型別後執行的**
注意:如果不是指定的異常型別還是會報錯。【例子】
try
: a =
int(
input
('請輸入除數(分母):'))
b =int(
input
('請輸入被除數(分子):'))
print
(b/a)
print
('異常檢測出來後,繼續執行的**'
)except
(zerodivisionerror,valueerror)
as error:
print
('執行錯誤\n原因是:'
+str
(error)
)'''
請輸入除數(分母):a
執行錯誤
原因是:invalid literal for int() with base 10: 'a'
'''
try
: 檢測範圍
except 異常型別 as 變數名:
出現異常後的處理**
else
: 如果沒有異常執行這塊**
【例子】
try
: a =
int(
input
('請輸入除數(分母):'))
b =int(
input
('請輸入被除數(分子):'))
print
(b/a)
except
(zerodivisionerror,valueerror)
as error:
print
('執行錯誤\n原因是:'
+str
(error)
)else
:print
('沒有異常,正確執行'
)'''
請輸入除數(分母):2
請輸入被除數(分子):4
2.0沒有異常,正確執行
'''
try
: 檢測範圍
except 異常型別 as 變數名:
出現異常後的處理**
finally
: 無論如何都會被執行的**
【例子】
try
: a =
int(
input
('請輸入除數(分母):'))
b =int(
input
('請輸入被除數(分子):'))
print
(b/a)
except
(zerodivisionerror,valueerror)
as error:
print
('執行錯誤\n原因是:'
+str
(error)
)else
:print
('沒有異常,正確執行'
)finally
:print
('無論如何都會執行我'
)'''
請輸入除數(分母):0
請輸入被除數(分子):2
執行錯誤
原因是:division by zero
無論如何都會執行我
'''
try
: a=
102if a>
100:
raise exception(
'數值大於100'
)except exception as error:
print
(error,
type
(error)
)# 數值大於100
import random
true_num=random.randint(0,
100)
print
('猜測乙個0-100之間的整數'
)try
:for i in
range(1
,101):
print
(f'第次猜,'
,end='')
user_num=
int(
input
('請輸入乙個整型數字:'))
if user_num > true_num:
print
('太大'
)if user_num < true_num:
print
('太小'
)if user_num == true_num:
print
(f'恭喜你猜到了這個數是'
)except valueerror:
print
('輸入無效'
)'''
猜測乙個0-100之間的整數
第1次猜,請輸入乙個整型數字:50
恭喜你猜到了這個數是50
--------------------------------
猜測乙個0-100之間的整數
第1次猜,請輸入乙個整型數字:a
輸入無效
'''
python基礎學習03
的驗顏值真的很重要 1 對於if語句另外乙個使用的方法 m a if a2 while和else語句連用。可以用來比較準確的來判斷while迴圈的次數,以及他的執 況 3 對於for迴圈的迭代過程 for i in wen 之後可以一次輸出相應的字母 4 通過while輸出字串的相應字母 i 0wh...
python基礎學習03
概述 2.執行py程式方式 2種 1.點選python應用程式,這是python的互動器,可以直接寫 程式不能永久儲存,主要用於簡單的語法測試相關 2.開啟cmd cd 到python所在資料夾,通過命令列執行寫好的python檔案 字尾.py python 檔案位置 檔名 3.整合開發環境pych...
DW學習 Python基礎11(魔法方法)
2 魔法運算 算數運算 3增量賦值運算子 4一元運算子 6 習題 解釋 當物件呼叫類時,init self 會自動被觸發,python會自動將當前呼叫的空物件傳給self引數。過程 注意 init self 不能返回什麼值,返回的是none。class rec def init self,x,y s...