python異常類 python 異常型別

2021-10-18 15:25:16 字數 2210 閱讀 3956

1、nameerror:嘗試訪問乙個未申明的變數

>>>  v

nameerror: name 'v' is not defined

2、zerodivisionerror:除數為0

>>> v = 1/0

zerodivisionerror: int division or modulo by zero

3、syntaxerror:語法錯誤

>>> int int

syntaxerror: invalid syntax (, line 1)

4、indexerror:索引超出範圍

>>> list = [2]

>>> list[3]

traceback (most recent call last):

file "", line 1, in

list[3]

indexerror: list index out of range

5、keyerror:字典關鍵字不存在

>>> dic =

>>> dic['3']

traceback (most recent call last):

file "", line 1, in

dic['3']

keyerror: '3'

6、ioerror:輸入輸出錯誤

>>> f = open('abc')

ioerror: [errno 2] no such file or directory: 'abc'

7、attributeerror:訪問未知物件屬性

>>> class worker:

def work():

print("i am working")

>>> w = worker()

>>> w.a

traceback (most recent call last):

file "", line 1, in

w.aattributeerror: 'worker' object has no attribute 'a'

8、valueerror:數值錯誤

>>> int('d')

traceback (most recent call last):

file "", line 1, in

int('d')

valueerror: invalid literal for int() with base 10: 'd'

9、typeerror:型別錯誤

>>> istr = '22'

>>> ival = 22

>>> obj = istr + ival;

traceback (most recent call last):

file "", line 1, in

obj = istr + ival;

typeerror: can't convert 'int' object to str implicitly

10、assertionerror:斷言錯誤

>>> assert 1 != 1

traceback (most recent call last):

file "", line 1, in

assert 1 != 1

assertionerror

下面增加一些本人工作過程中遇到過的異常:

11、memoryerror:記憶體耗盡異常

12、notimplementederror:方法沒實現引起的異常

示例:1 class base(object):

2 def __init__(self):

3 pass

5 def action(self):

6 raise notimplementederror

定義乙個類,乙個介面方法action,如果直接呼叫action則拋notimplementederror異常,這樣做的目的通常是用來模擬介面

13、lookuperror:鍵、值不存在引發的異常

lookuperror異常是indexerror、keyerror的基類

如果你不確定資料型別是字典還是列表時,可以用lookuperror捕獲此異常

14、standarderror 標準異常。

異常處理有別於錯誤檢測:

錯誤檢測與異常處理區別在於:錯誤檢測是在正常的程式流中,處理不可預見問題的**,例如乙個呼叫操作未能成功結束

Python 函式,類,模組,異常

def demo print shao f lambda a,b a bdef demo x print shao str x demo 嚶嚶嚶 def demo x 嚶嚶嚶 print shao str x demo demo 12138 def demo x print shao x demo ...

python 丟擲異常 python 異常

異常的概念 捕獲異常 異常的傳遞 丟擲異常 程式在執行時,如果 python 直譯器 遇到 到乙個錯誤,會停止程式的執行,並且提示一些錯誤資訊,這就是 異常 程式停止執行並且提示錯誤資訊 這個動作,我們通常稱之為 丟擲 raise 異常 程式開發時,很難將 所有的特殊情況 都處理的面面俱到,通過 異...

例項化servlet類異常 python類和例項化

從開始學習python我們就知道它是一門物件導向的語言,先來簡單的了解下物件導向的一些基本特徵。物件導向最重要的概念就是類 class 和例項 instance 類和模組差不多,我們通過模組可以儲存一些 並通過 運算子訪問這些 類說 俺也一樣!class後面接著是類名 中間有空格 即mypy,類名通...