欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

深入理解python try異常處理機(jī)制

 更新時間:2016年06月01日 15:51:44   投稿:jingxian  
下面小編就為大家?guī)硪黄钊肜斫鈖ython try異常處理機(jī)制。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

深入理解python try異常處理機(jī)制

#python的try語句有兩種風(fēng)格
#一:種是處理異常(try/except/else)
#二:種是無論是否發(fā)生異常都將執(zhí)行最后的代碼(try/finally)

try/except/else風(fēng)格
try:
  <語句> #運(yùn)行別的代碼
except <名字>: 
  <語句> #如果在try部份引發(fā)了'name'異常
except <名字>,<數(shù)據(jù)>:
  <語句> #如果引發(fā)了'name'異常,獲得附加的數(shù)據(jù)
else:
  <語句> #如果沒有異常發(fā)生
#try的工作原理是,當(dāng)開始一個try語句后,python就在當(dāng)前程序的上下文中作標(biāo)記,這樣當(dāng)異常出現(xiàn)時就可以回到這里,try子句先執(zhí)行,接下來會發(fā)生什么依賴于執(zhí)行時是否出現(xiàn)異常。
#1、如果當(dāng)try后的語句執(zhí)行時發(fā)生異常,python就跳回到try并執(zhí)行第一個匹配該異常的except子句,異常處理完畢,控制流就通過整個try語句(除非在處理異常時又引發(fā)新的異常)。
#2、如果在try后的語句里發(fā)生了異常,卻沒有匹配的except子句,異常將被遞交到上層的try,或者到程序的最上層(這樣將結(jié)束程序,并打印缺省的出錯信息)。
#3、如果在try子句執(zhí)行時沒有發(fā)生異常,python將執(zhí)行else語句后的語句(如果有else的話),然后控制流通過整個try語句。


try/finally風(fēng)格
try:
  <語句>
finally:
  <語句> #退出try時總會執(zhí)行

python總會執(zhí)行finally子句,無論try子句執(zhí)行時是否發(fā)一異常。
1、如果沒有發(fā)生異常,python運(yùn)行try子句,然后是finally子句,然后繼續(xù)。
2、如果在try子句發(fā)生了異常,python就會回來執(zhí)行finally子句,然后把異常遞交給上層try,控制流不會通過整個try語句。
當(dāng)你想無論是否發(fā)生異常都確保執(zhí)行某些代碼時,try/finally是有用的。

#這個在打開文件的時候有用 finally總是在最后close()文件

try 語句子句形式表
except: 捕獲所有異常
except name: 只捕獲特定的異常
except name,value: 捕獲異常和它的附加數(shù)據(jù)(將異常的信息保存到value,)
except (name1,name2): 捕獲任何列出的異常
else: 如果沒有異常
finally: 總是執(zhí)行

>>> try:
  f = open('file.txt')
except IOError, e:
  print e
else:
    print 'wrong'

    
[Errno 2] No such file or directory: 'file.txt'

最新的python版本 支持try/except/finally

try: 1:如果x沒有異常,執(zhí)行z,i
  x 2:如果x有異常, 一:如果except捕捉到異常則執(zhí)行y,i
except(name): 二:沒捕捉到,執(zhí)行i,然后返回內(nèi)置異常處理 
  y
else:
  z
finally:
  i

以上這篇深入理解python try異常處理機(jī)制就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python基礎(chǔ)教程項目五之虛擬茶話會

    python基礎(chǔ)教程項目五之虛擬茶話會

    這篇文章主要為大家詳細(xì)介紹了python基礎(chǔ)教程項目五之虛擬茶話會,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • python3實現(xiàn)SMTP發(fā)送郵件詳細(xì)教程

    python3實現(xiàn)SMTP發(fā)送郵件詳細(xì)教程

    這篇文章主要為大家詳細(xì)介紹了python3實現(xiàn)SMTP發(fā)送郵件的詳細(xì)教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • Pycharm安裝第三方庫時Non-zero exit code錯誤解決辦法

    Pycharm安裝第三方庫時Non-zero exit code錯誤解決辦法

    這篇文章主要介紹了Pycharm安裝第三方庫時Non-zero exit code錯誤解決辦法,最好的解決辦法可以通過“Pycharm”左下角的“Terminal”,在pycharm內(nèi)使用pip安裝,以安裝“requests”為例,需要的朋友可以參考下
    2023-01-01
  • django 控制頁面跳轉(zhuǎn)的例子

    django 控制頁面跳轉(zhuǎn)的例子

    今天小編就為大家分享一篇django 控制頁面跳轉(zhuǎn)的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • Python實現(xiàn)E-Mail收集插件實例教程

    Python實現(xiàn)E-Mail收集插件實例教程

    這篇文章主要給大家介紹了關(guān)于Python實現(xiàn)E-Mail收集插件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧
    2019-02-02
  • YOLOv5改進(jìn)系列之增加小目標(biāo)檢測層

    YOLOv5改進(jìn)系列之增加小目標(biāo)檢測層

    yolov5出來已經(jīng)很長時間了,所以有關(guān)yolov5的一些詳細(xì)介紹在這里就不一一介紹了,下面這篇文章主要給大家介紹了關(guān)于YOLOv5改進(jìn)系列之增加小目標(biāo)檢測層的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • pandas.dataframe按行索引表達(dá)式選取方法

    pandas.dataframe按行索引表達(dá)式選取方法

    今天小編就為大家分享一篇pandas.dataframe按行索引表達(dá)式選取方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • 一篇文章搞懂Python反斜杠的相關(guān)問題

    一篇文章搞懂Python反斜杠的相關(guān)問題

    這篇文章主要給大家介紹了如何通過一篇文章搞懂Python反斜杠的相關(guān)問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Python tkinter常用操作代碼實例

    Python tkinter常用操作代碼實例

    這篇文章主要介紹了Python tkinter常用操作代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • 對Python中plt的畫圖函數(shù)詳解

    對Python中plt的畫圖函數(shù)詳解

    今天小編就為大家分享一篇對Python中plt的畫圖函數(shù)詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11

最新評論