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,類名通...