教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢(xún)/投訴熱線(xiàn):400-618-4000

Python2和Python3處理異常有什么不同?

更新時(shí)間:2022年05月16日14時(shí)44分 來(lái)源:傳智教育 瀏覽次數(shù):


Python 3版本中的異常處理與Python 2版本主要有以下4點(diǎn)不同:

(1)在Python 2中,所有類(lèi)型的對(duì)象直接被拋出;在Python3中,只有繼承自BaseException的對(duì)象才可以被拋出。

(2)在Python 2中,捕獲異常的語(yǔ)法是“except Exception,err”;在Python 3中,引入了as關(guān)鍵字,捕獲異常的語(yǔ)法變更為“exceptException as err”。

(3)在Python 2中,處理異??梢允褂?ldquo;raise Exception,args”或者“raise Exception(args)”兩種語(yǔ)法;在Python 3中,處理異常只能使用“raise Exception(args)”。

(4)Python3取消了異常類(lèi)的序列行為和message屬性。Python 2和Python 3處理異常的示例代碼如下:

Python 2:

>>> try:
raise TypeError,"類(lèi)型錯(cuò)誤"
..
... except TypeError, error:
print error.message
...
類(lèi)型錯(cuò)誤

Python3:

>>> try:
raise TypeError("類(lèi)型錯(cuò)誤")
...
...except TypeError as error:
print(error)
...
類(lèi)型錯(cuò)誤


以上只列舉了Python 2與Python 3的部分區(qū)別,更多內(nèi)容見(jiàn)官方文檔https://docs.python.org/3whatsnew/3.0.html。




猜你喜歡:

python2和3語(yǔ)法區(qū)別是什么?

學(xué)完P(guān)ython可以勝任哪些領(lǐng)域的開(kāi)發(fā)工作?

Python語(yǔ)言有哪些特點(diǎn)?3分鐘了解

Python一二維數(shù)據(jù)的存儲(chǔ)與讀寫(xiě)

傳智教育python+大數(shù)據(jù)開(kāi)發(fā)培訓(xùn)課程

0 分享到:
和我們?cè)诰€(xiàn)交談!