中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何異常處理try except

發布時間:2021-08-03 11:14:35 來源:億速云 閱讀:129 作者:小新 欄目:開發技術

小編給大家分享一下python如何異常處理try except,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

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

#通過實例屬性 列表 字典構造對應的異常
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之間的語句觸發
# AttributeError錯誤時程序不會異常退出而是執行except AttributeError下面的內容
  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之間內容沒有觸發捕獲異常也沒有異常退出就會跳過except轉到執行else下面的語句
finally:
  print("this is finally")#不論程序是否觸發異常,只要沒有退出都會執行finally下面的內容

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

try:
  list1[3]
  dict1["sex"]
except IndexError as e:#當需要分開捕獲多個異常可以使用多條except語句,try與except之間語句觸發任意一個異常捕獲后就跳到對應except執行其下面的語句,其余except不在繼續執行
  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之間手工觸發,錯誤內容為實例化傳入的參數
except Test_Exception as e:
  print(e)

以上是“python如何異常處理try except”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

璧山县| 靖边县| 乌鲁木齐县| 洪湖市| 余庆县| 徐闻县| 舟山市| 阿城市| 兰西县| 进贤县| 鄂托克前旗| 双辽市| 错那县| 广昌县| 泸西县| 武陟县| 景宁| 浦北县| 邯郸县| 沅陵县| 清徐县| 平果县| 伊宁市| 弋阳县| 钟山县| 玉屏| 望江县| 西林县| 惠来县| 前郭尔| 右玉县| 红桥区| 泽州县| 乌恰县| 玛曲县| 弥勒县| 美姑县| 城口县| 霍山县| 同心县| 巴青县|