最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2020年03月23日 11:55:35   作者:隨風(fēng)行云  
這篇文章主要介紹了python異常處理、自定義異常、斷言,結(jié)合實(shí)例形式分析了python異常處理、自定義異常、斷言相關(guān)概念、原理、用法及操作注意事項(xiàng),需要的朋友可以參考下

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

什么是異常:

  • 當(dāng)程序遭遇某些非正常問(wèn)題的時(shí)候就會(huì)拋出異常:比如int()只能處理能轉(zhuǎn)化成int的對(duì)象,如果傳入一個(gè)不能轉(zhuǎn)化的對(duì)象就會(huì)報(bào)錯(cuò)并拋出異常image
  • 常用的異常有:

ValueError :傳入無(wú)效的錯(cuò)誤的參數(shù)image

TypeError:進(jìn)行了對(duì)類(lèi)型無(wú)效的操作image

IndexError:序列中沒(méi)有此索引image

NameError:使用未定義的變量image

 

更多更具體的異??梢詤⒖糚ython官方文檔image,讀讀官方文檔更健康


異常的處理:

  • python使用try,except,finally,else來(lái)處理異常,它們各自意義如下:

image

try:
  s=input("請(qǐng)輸入要int的字符串:")
  i=int(s)
except ValueError as e:
  print(e)
else:
  print("這里是當(dāng)沒(méi)有發(fā)生異常時(shí)的操作")
finally:
  print("這里是即使發(fā)生異常也會(huì)執(zhí)行的代碼")

"""第一次運(yùn)行結(jié)果:
請(qǐng)輸入要int的字符串:123
這里是當(dāng)沒(méi)有發(fā)生異常時(shí)的操作
這里是即使發(fā)生異常也會(huì)執(zhí)行的代碼
"""
"""第二次運(yùn)行結(jié)果
請(qǐng)輸入要int的字符串:abc
invalid literal for int() with base 10: 'abc'
這里是即使發(fā)生異常也會(huì)執(zhí)行的代碼
"""
  • except可以在一條except里捕獲多個(gè)異常,但需要用括號(hào)包裹多個(gè)異常,并且即使同時(shí)捕獲多個(gè)異常,由于異常會(huì)導(dǎo)致程序發(fā)生終止,所以只會(huì)捕獲到一個(gè)異常,所以只需要一個(gè)獲取異常返回對(duì)象的變量:image
  • 如果不確定捕獲什么異常,可以使用異常的基類(lèi)Exception【更高級(jí)的可以使用BaseException】,并且最好把Exception放在所有except的最后:image

自定義異常:

  • 使用raise可以拋出自定義的異常信息image
  • 只要繼承了Exception,就可以定義自己的異常類(lèi):image
class myException(Exception):
  def __init__(self,msg):
     self.message=msg
  def __str__(self):###這里就是異常的字符串信息
    return self.message

try :
  raise myException("我的異常")#py3

except myException as e:
  print(e)
  
"""
結(jié)果:
我的異常
"""

斷言:

  • 意義:與其讓程序在運(yùn)行最崩潰,不如在出現(xiàn)錯(cuò)誤條件時(shí)就崩潰【比如說(shuō),老司機(jī)想要開(kāi)車(chē),隨便開(kāi)車(chē)風(fēng)險(xiǎn)很大的,使用斷言就好像先判斷路況如何,然后再開(kāi)車(chē),而不是說(shuō)開(kāi)車(chē)出去才發(fā)現(xiàn)交警大隊(duì)在等待】
police=False
assert police ==False
print("老司機(jī)開(kāi)車(chē)?yán)?,嗚嗚?)

police=True
assert police ==False
print("老司機(jī)開(kāi)車(chē)?yán)玻瑔鑶鑶?)#報(bào)錯(cuò),AssertionError

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

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

相關(guān)文章

  • Python Django的安裝配置教程圖文詳解

    Python Django的安裝配置教程圖文詳解

    Django是一個(gè)開(kāi)放源代碼的Web應(yīng)用框架,由Python寫(xiě)成,Django是重量級(jí)選手中最有代表性的一位。許多成功的網(wǎng)站和APP都基于Django。這篇文章主要介紹了Python Django的安裝配置,需要的朋友可以參考下
    2019-07-07
  • Python NumPy教程之遍歷數(shù)組詳解

    Python NumPy教程之遍歷數(shù)組詳解

    這篇文章主要為大家詳細(xì)介紹了Python?NumPy中遍歷數(shù)組的方法,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-08-08
  • Python 通過(guò)requests實(shí)現(xiàn)騰訊新聞抓取爬蟲(chóng)的方法

    Python 通過(guò)requests實(shí)現(xiàn)騰訊新聞抓取爬蟲(chóng)的方法

    今天小編就為大家分享一篇Python 通過(guò)requests實(shí)現(xiàn)騰訊新聞抓取爬蟲(chóng)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • 解決Django加載靜態(tài)資源失敗的問(wèn)題

    解決Django加載靜態(tài)資源失敗的問(wèn)題

    今天小編就為大家分享一篇解決Django加載靜態(tài)資源失敗的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • Python圖像處理Pillow庫(kù)的安裝使用

    Python圖像處理Pillow庫(kù)的安裝使用

    本文詳細(xì)介紹了Python第三方庫(kù)Pillow的使用,通過(guò)導(dǎo)入Pillow庫(kù)、打開(kāi)和保存圖像、基本圖像操作以及圖像處理高級(jí)功能的代碼示例,我們了解了Pillow庫(kù)的強(qiáng)大功能和靈活性,感興趣的朋友跟隨小編一起看看吧
    2023-07-07
  • Python實(shí)現(xiàn)判斷字符串中包含某個(gè)字符的判斷函數(shù)示例

    Python實(shí)現(xiàn)判斷字符串中包含某個(gè)字符的判斷函數(shù)示例

    這篇文章主要介紹了Python實(shí)現(xiàn)判斷字符串中包含某個(gè)字符的判斷函數(shù),涉及Python自定義函數(shù)中使用find方法針對(duì)字符串的簡(jiǎn)單判斷查找相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • pytorch Dataset,DataLoader產(chǎn)生自定義的訓(xùn)練數(shù)據(jù)案例

    pytorch Dataset,DataLoader產(chǎn)生自定義的訓(xùn)練數(shù)據(jù)案例

    這篇文章主要介紹了pytorch Dataset, DataLoader產(chǎn)生自定義的訓(xùn)練數(shù)據(jù)案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-03-03
  • PyQt Qt Designer工具的布局管理詳解

    PyQt Qt Designer工具的布局管理詳解

    這篇文章主要介紹了PyQt Qt Designer工具的布局管理詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • python中邏輯與或(and、or)和按位與或異或(&、|、^)區(qū)別

    python中邏輯與或(and、or)和按位與或異或(&、|、^)區(qū)別

    這篇文章主要介紹了python中邏輯與或(and、or)和按位與或異或(&、|、^)區(qū)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Python采集騰訊新聞實(shí)例

    Python采集騰訊新聞實(shí)例

    這篇文章主要介紹了Python采集騰訊新聞實(shí)例,一個(gè)簡(jiǎn)單的例子,著重于實(shí)現(xiàn)步驟的講解,需要的朋友可以參考下
    2014-07-07

最新評(píng)論

景宁| 浮山县| 息烽县| 新化县| 辽源市| 徐汇区| 安吉县| 驻马店市| 高雄县| 永安市| 保康县| 新余市| 建瓯市| 南平市| 军事| 香河县| 昭苏县| 特克斯县| 牡丹江市| 城固县| 博白县| 公主岭市| 娄烦县| 无极县| 旺苍县| 长丰县| 八宿县| 大余县| 巨鹿县| 长沙县| 临西县| 赤壁市| 开原市| 凌云县| 佛教| 德化县| 汕尾市| 中西区| 晋江市| 鹿邑县| 横山县|