異常(高階) exception
異常回顧:
try-except 語句 捕獲(接收)異常通知,把異常流程變為正常流程
try-finally 語句 執行必須要執行的語句.
raise 語句 傳送異常通知,同時進入異常流程
assert 語句 傳送assertionerror異常
with 語句
with語句
語法:with 表示式1 [as 變數1], 表示式2 [as 變數2], …:
語句塊作用:
使用於對資源進行訪問的場合,確保使用過程中不管是否發生異常都會
try
:with
open
("0.txt"
,'a')as
file
: line =
file
.readlines(
)except oserror:
print
("檔案開啟失敗"
)except valueerror:
print
("檔案讀寫失敗"
)
引發nameerror錯誤:
try
: s =
none
if s is
none
:print
"s 是空物件"
raise nameerror #如果引發nameerror異常,後面的**將不能執行
print
len(s)
#這句不會執行,但是後面的except還是會走到
except typeerror:
print
"空物件沒有長度"
s =none
if s is
none
:raise nameerror
print
'is here?'
#如果不使用try......except這種形式,那麼直接丟擲異常,不會執行到這裡
觸發exception錯誤:
def
mye( level )
:if level <1:
raise exception(
"invalid level!"
)# 觸發異常後,後面的**就不會再執行
try:
mye(0)
# 觸發異常
except exception as err:
print(1
,err)
else
:print(2
)
python異常捕獲 如何捕獲Python中的異常
python 提供了try except語句捕獲並處理異常,該異常處理語句的基本語法結構如下 try 可能產生異常的 塊 except error1,error2,as e 處理異常的 塊1 except error3,error4,as e 處理異常的 塊2該格式中,括起來的部分可以使用,也可以省...
python異常捕獲
python的異常處理如c c 的結構一樣。python用try.except.c c 則用try.catch.並不難理解。在對具體錯誤的獲取則有點不同,主要是語法的差異上。c 在catch後可生成相應乙個異常的類,然後可通過類物件獲取相關的錯誤資訊。而python則不同,它在獲取錯誤資訊有點奇怪,...
Python捕獲異常
如果感覺 可能會出現異常,可以通過如下兩種方法捕獲異常。一 捕獲所以異常 try statement1 statement2 except exception,e print exception,e 二 通過trace模組檢視 import traceback try statement1 stat...