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

python異常處理try except過程解析

 更新時間:2020年02月03日 13:30:06   作者:flag_HW  
這篇文章主要介紹了python異常處理try except過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

這篇文章主要介紹了python異常處理try except過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

某些時候我們能夠預(yù)判程序可能會出現(xiàn)何種類型的錯誤,而此時我們希望程序繼續(xù)執(zhí)行而不是退出,此時就需要用到異常處理;下面是常用的幾種異常處理方法

#通過實例屬性 列表 字典構(gòu)造對應(yīng)的異常
class Human(object):
  def __init__(self, name, age, sex):
    self.name = name
    self.age = age
  def get_info(self):
    print("my name is %s,age is %s"%(self.name, self.age))
man1 = Human("李四", 22, "man")
list1 = [1, 2, 3]
dict1 = {"name":"張三", "age":12}

#異常捕獲的語法
try:
  man1.get_info1()
except AttributeError as e: #AttributeError為錯誤類型,此種錯誤的類型賦值給變量e;當try與except之間的語句觸發(fā)
# AttributeError錯誤時程序不會異常退出而是執(zhí)行except AttributeError下面的內(nèi)容
  print("this is a AttributeError:",e)
finally:
  print("this is finally")

try:
  man1.get_info()
  #list1[3]
  #dict1["sex"]
except AttributeError as e:
  print("this is a AttributeError:",e)
else:
  print("一切正常") #當try與except之間內(nèi)容沒有觸發(fā)捕獲異常也沒有異常退出就會跳過except轉(zhuǎn)到執(zhí)行else下面的語句
finally:
  print("this is finally")#不論程序是否觸發(fā)異常,只要沒有退出都會執(zhí)行finally下面的內(nèi)容

try:
  list1[3]
  dict1["sex"]
except (IndexError, KeyError) as e: #當需要捕獲多個異常在一條except時候可以使用這種語法,try與except之間語句觸發(fā)任意一個異常捕獲后就跳到except下面的語句繼續(xù)執(zhí)行
  print("this is a IndexError or KeyError:",e)

try:
  list1[3]
  dict1["sex"]
except IndexError as e:#當需要分開捕獲多個異??梢允褂枚鄺lexcept語句,try與except之間語句觸發(fā)任意一個異常捕獲后就跳到對應(yīng)except執(zhí)行其下面的語句,其余except不在繼續(xù)執(zhí)行
  print("this is a IndexError:",e)
except KeyError as e:
  print("this is a KeyError:",e)

try:
  man1.get_info1()
except IndexError as e:
  print("this is a IndexError:",e)
except Exception as e:
  print("this is a OtherError:",e)#可以使用except Exception來捕獲絕大部分異常而不必將錯誤類型顯式全部寫出來

#自己定義異常
class Test_Exception(Exception):
  def __init__(self, message):
    self.message = message
try:
  man1.get_info()
  raise Test_Exception("自定義錯誤")#自己定義的錯誤需要在try與except之間手工觸發(fā),錯誤內(nèi)容為實例化傳入的參數(shù)
except Test_Exception as e:
  print(e)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python中csv文件的寫入與讀取方法例子

    Python中csv文件的寫入與讀取方法例子

    這篇文章主要給大家介紹了關(guān)于Python中csv文件的寫入與讀取方法的相關(guān)資料,csv是"Comma-Separated Values(逗號分割的值)"的首字母縮寫,它其實和txt文件一樣,都是純文本文件,使用Python來讀寫csv文件是非常容易的,需要的朋友可以參考下
    2023-09-09
  • Python模塊學(xué)習(xí)之struct模塊詳解

    Python模塊學(xué)習(xí)之struct模塊詳解

    這篇文章主要介紹了Python模塊學(xué)習(xí)之struct模塊詳解,該模塊作用是完成Python數(shù)值和C語言結(jié)構(gòu)體的Python字符串形式間的轉(zhuǎn)換,這可以用于處理存儲在文件中或從網(wǎng)絡(luò)連接中存儲的二進制數(shù)據(jù),以及其他數(shù)據(jù)源,需要的朋友可以參考下
    2023-07-07
  • python中map、any、all函數(shù)用法分析

    python中map、any、all函數(shù)用法分析

    這篇文章主要介紹了python中map、any、all函數(shù)用法,實例分析了map、any、all函數(shù)的相關(guān)使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-04-04
  • scrapy中的spider傳參實現(xiàn)增量的方法

    scrapy中的spider傳參實現(xiàn)增量的方法

    有時候需要根據(jù)項目的實際需求向spider傳遞參數(shù)來控制spider的運行方式,本文主要介紹了scrapy中的spider傳參實現(xiàn)增量的方法,具有一定的參考價值,感興趣的可以了解一下
    2022-06-06
  • Python?redis模塊的使用教程指南

    Python?redis模塊的使用教程指南

    這篇文章主要為大家詳細介紹了Python?redis模塊的使用教程指南的相關(guān)資料,文中的示例代碼講解詳細,感興趣的小伙伴快跟隨小編一起學(xué)習(xí)一下吧
    2022-10-10
  • Python實現(xiàn)向列表或數(shù)組添加元素

    Python實現(xiàn)向列表或數(shù)組添加元素

    Python中的列表是一種動態(tài)數(shù)組,可以存儲不同數(shù)據(jù)類型的元素,并提供多種方法進行元素的添加和刪除,列表是Python中非常靈活和強大的數(shù)據(jù)結(jié)構(gòu),可以通過索引訪問、修改和操作列表中的元素,列表的創(chuàng)建十分簡單,只需使用方括號括起元素,并用逗號分隔
    2024-09-09
  • 如何解決vscode下powershell終端進入python虛擬環(huán)境venv問題

    如何解決vscode下powershell終端進入python虛擬環(huán)境venv問題

    這篇文章主要介紹了如何解決vscode下powershell終端進入python虛擬環(huán)境venv問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • 一步步教你用Python實現(xiàn)2048小游戲

    一步步教你用Python實現(xiàn)2048小游戲

    相信2048這個游戲?qū)Υ蠹襾碚f一定不陌生,下面這篇文章就主要給大家介紹了怎么用Python實現(xiàn)2048小游戲,文中通過注釋與示例代碼介紹的很詳細,相信對大家的理解和學(xué)習(xí)具有一定的參考借鑒價值,有需要的朋友們一起來看看吧。
    2017-01-01
  • Python字典的基礎(chǔ)操作

    Python字典的基礎(chǔ)操作

    這篇文章主要介紹了Python字典的基礎(chǔ)操作,Python中的字典數(shù)據(jù)類型和現(xiàn)實中的字典很像,它是以鍵值對(鍵和值的組合)的方式把數(shù)據(jù)組織到一起,可以通過鍵找到與之對應(yīng)的值并進行操作,下面來看文章金額提內(nèi)容吧,需要的朋友可以參考一下
    2021-11-11
  • Python命令行解析器argparse詳解

    Python命令行解析器argparse詳解

    大家好,本篇文章主要講的是Python命令行解析器argparse詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01

最新評論