您好,登錄后才能下訂單哦!
這篇文章主要介紹“python異常的概述和利用”,在日常操作中,相信很多人在python異常的概述和利用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”python異常的概述和利用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
一、知識回顧:
補充next函數:
#使用變量來表示一個實際的生成器對象
scq=shengChengqi()
print(next(scq))
print(next(scq))
二、異常概述
提問:什么是異常?
三、異常的分類
我們這里討論的異常主要分為兩大類。
一類是自動自動拋出的異常,系統編譯器自動判斷來拋出異常。
laoliuAge=31/0
拋出異常ZeroDivisionError: division by zero
一類是人工手動拋出的異常,使用raise來手動拋出。
提問:實際中我們如何使用手動來拋出異常?
舉例如下:
a=1
if a==1:
raise Exception("這里是老劉拋出的異常")
else:
print("沒有異常")
三、異常的利用
舉例:
1.判斷是否是int類型的數據
2.判斷是否是string類型的數據
歸納一下:
1.我們可以利用異常來做一些數據類型的轉換。
2.我們可以利用異常來進行數據類型的判斷。
四、重要的內建類異常
Exception所有異常的基類
AttributeError屬性引用或屬性失敗時拋出的異常
OSError當操作系統無法執行任務時拋出的異常
IndexError在使用序列中不存在的索引時拋出的異常
KeyError在使用映射中不存在的鍵值時拋出的異常
NameError找不到名字(變量)時拋出的異常
SyntaxError在代碼為錯誤形式時觸發
TypeError在內建操作或函數應用于錯誤類型的對象時拋出的異常
ValueError在內建操作或者函數應用于正確類型的對象,但該對象使用了不適合的值時拋出的異常
ZeroDivisionError在除法或者取模操作的第2個參數值為0時拋出的異常
五、總結強調
1.理解什么是異常?
2.理解異常的分類
3.掌握手動拋出異常的方法
4.學會利用異常,把異常的拋出為己所用
本節源代碼:
# def shengChengqi():
# list1=[3,5,2]
# for i in list1:
# yield i
#
# #使用變量來表示一個實際的生成器對象
# scq=shengChengqi()
# print(next(scq))
# print(next(scq))
# print(next(scq))
# print(next(scq))
# laoliuAge=31/0
# a=1
# if a==1:
# raise Exception("這里是老劉拋出的異常")
# else:
# print("沒有異常")
b="2"
c=int(b)+2
# try:
# c=b+2
# print(c)
# except:
# print("程序有點小問題,請聯系管理員")
到此,關于“python異常的概述和利用”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。