国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

python異常處理、自定義異常、斷言原理與用法分析

瀏覽:2日期:2022-08-01 14:55:39

本文實例講述了python異常處理、自定義異常、斷言原理與用法。分享給大家供大家參考,具體如下:

什么是異常: 當(dāng)程序遭遇某些非正常問題的時候就會拋出異常:比如int()只能處理能轉(zhuǎn)化成int的對象,如果傳入一個不能轉(zhuǎn)化的對象就會報錯并拋出異常python異常處理、自定義異常、斷言原理與用法分析 常用的異常有:

ValueError :傳入無效的錯誤的參數(shù)python異常處理、自定義異常、斷言原理與用法分析

TypeError:進(jìn)行了對類型無效的操作python異常處理、自定義異常、斷言原理與用法分析

IndexError:序列中沒有此索引python異常處理、自定義異常、斷言原理與用法分析

NameError:使用未定義的變量python異常處理、自定義異常、斷言原理與用法分析

更多更具體的異常可以參考Python官方文檔python異常處理、自定義異常、斷言原理與用法分析,讀讀官方文檔更健康

異常的處理: python使用try,except,finally,else來處理異常,它們各自意義如下:

python異常處理、自定義異常、斷言原理與用法分析

try: s=input('請輸入要int的字符串:') i=int(s)except ValueError as e: print(e)else: print('這里是當(dāng)沒有發(fā)生異常時的操作')finally: print('這里是即使發(fā)生異常也會執(zhí)行的代碼')'''第一次運行結(jié)果:請輸入要int的字符串:123這里是當(dāng)沒有發(fā)生異常時的操作這里是即使發(fā)生異常也會執(zhí)行的代碼''''''第二次運行結(jié)果請輸入要int的字符串:abcinvalid literal for int() with base 10: ’abc’這里是即使發(fā)生異常也會執(zhí)行的代碼''' except可以在一條except里捕獲多個異常,但需要用括號包裹多個異常,并且即使同時捕獲多個異常,由于異常會導(dǎo)致程序發(fā)生終止,所以只會捕獲到一個異常,所以只需要一個獲取異常返回對象的變量:python異常處理、自定義異常、斷言原理與用法分析 如果不確定捕獲什么異常,可以使用異常的基類Exception【更高級的可以使用BaseException】,并且最好把Exception放在所有except的最后:python異常處理、自定義異常、斷言原理與用法分析自定義異常: 使用raise可以拋出自定義的異常信息python異常處理、自定義異常、斷言原理與用法分析 只要繼承了Exception,就可以定義自己的異常類:python異常處理、自定義異常、斷言原理與用法分析

class myException(Exception): def __init__(self,msg): self.message=msg def __str__(self):###這里就是異常的字符串信息 return self.messagetry : raise myException('我的異常')#py3except myException as e: print(e) '''結(jié)果:我的異常'''斷言: 意義:與其讓程序在運行最崩潰,不如在出現(xiàn)錯誤條件時就崩潰【比如說,老司機想要開車,隨便開車風(fēng)險很大的,使用斷言就好像先判斷路況如何,然后再開車,而不是說開車出去才發(fā)現(xiàn)交警大隊在等待】

police=Falseassert police ==Falseprint('老司機開車?yán)玻瑔鑶鑶?)

police=Trueassert police ==Falseprint('老司機開車?yán)玻瑔鑶鑶?)#報錯,AssertionError

更多Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python入門與進(jìn)階經(jīng)典教程》、《Python字符串操作技巧匯總》、《Python列表(list)操作技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設(shè)計有所幫助。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 永川市| 桐乡市| 新营市| 吴旗县| 开鲁县| 绿春县| 腾冲县| 延安市| 吉首市| 惠来县| 和龙市| 县级市| 东莞市| 宾阳县| 东城区| 乐平市| 黄骅市| 临湘市| 新晃| 东乡| 革吉县| 菏泽市| 丽江市| 甘孜县| 梓潼县| 仙游县| 竹溪县| 扬州市| 潞城市| 阳东县| 鄯善县| 洪泽县| 亚东县| 靖江市| 衡南县| 大厂| 囊谦县| 海门市| 邹平县| 景德镇市| 浮山县|