異常處理try,except,raise

1.try...except:

a=10
b=0
try:
    c=a/b
    print c
except ZeroDivisionError,e:
    print e.message
else:
    print "no error"
print "done"

結(jié)果:

integer division or modulo by zero
done

我們把可能發(fā)生錯誤的語句放在try模塊里莺匠,用except來處理異常浇衬。except可以處理一個專門的異常懒构,也可以處理一組圓括號中的異常,except (IOError ,ZeroDivisionError),e:,如果except后沒有指定異常耘擂,則默認(rèn)處理所有的異常胆剧。每一個try,都必須至少有一個except醉冤。

2.raise引發(fā)一個異常:

inputValue=input("please input a int data :")
if type(inputValue)!=type(1):
    raise ValueError
else:
    print inputValue

3.try...finally:
無論異常是否發(fā)生秩霍,在程序結(jié)束前,finally中的語句都會被執(zhí)行:

a=10
b=0
try:
    print a/b
except:
    print "error"
finally:
    print "always excute"

結(jié)果:

error
always excute

4.自定義一個異常類:
自定義一個MyException類蚁阳,繼承Exception:

class MyException(Exception):
    def __init__(self,message):
        Exception.__init__(self)
        self.message=message   

如果輸入的數(shù)字小于10铃绒,就引發(fā)一個MyException異常:

a=input("please input a num:")
if a<10:
    try:
        raise MyException("my excepition is raised ")
    except MyException,e:
        print e.message

結(jié)果:

please input a num:1
my excepition is raised

5.python所有的標(biāo)準(zhǔn)異常類:
異常名稱 描述
BaseException 所有異常的基類
SystemExit 解釋器請求退出
KeyboardInterrupt 用戶中斷執(zhí)行(通常是輸入^C)
Exception 常規(guī)錯誤的基類
StopIteration 迭代器沒有更多的值
GeneratorExit 生成器(generator)發(fā)生異常來通知退出
SystemExit Python 解釋器請求退出
StandardError 所有的內(nèi)建標(biāo)準(zhǔn)異常的基類
ArithmeticError 所有數(shù)值計算錯誤的基類
FloatingPointError 浮點計算錯誤
OverflowError 數(shù)值運算超出最大限制
ZeroDivisionError 除(或取模)零 (所有數(shù)據(jù)類型)
AssertionError 斷言語句失敗
AttributeError 對象沒有這個屬性
EOFError 沒有內(nèi)建輸入,到達EOF 標(biāo)記
EnvironmentError 操作系統(tǒng)錯誤的基類
IOError 輸入/輸出操作失敗
OSError 操作系統(tǒng)錯誤
WindowsError 系統(tǒng)調(diào)用失敗
ImportError 導(dǎo)入模塊/對象失敗
KeyboardInterrupt 用戶中斷執(zhí)行(通常是輸入^C)
LookupError 無效數(shù)據(jù)查詢的基類
IndexError 序列中沒有沒有此索引(index)
KeyError 映射中沒有這個鍵
MemoryError 內(nèi)存溢出錯誤(對于Python 解釋器不是致命的)
NameError 未聲明/初始化對象 (沒有屬性)
UnboundLocalError 訪問未初始化的本地變量
ReferenceError 弱引用(Weak reference)試圖訪問已經(jīng)垃圾回收了的對象
RuntimeError 一般的運行時錯誤
NotImplementedError 尚未實現(xiàn)的方法
SyntaxError Python 語法錯誤
IndentationError 縮進錯誤
TabError Tab 和空格混用
SystemError 一般的解釋器系統(tǒng)錯誤
TypeError 對類型無效的操作
ValueError 傳入無效的參數(shù)
UnicodeError Unicode 相關(guān)的錯誤
UnicodeDecodeError Unicode 解碼時的錯誤
UnicodeEncodeError Unicode 編碼時錯誤
UnicodeTranslateError Unicode 轉(zhuǎn)換時錯誤
Warning 警告的基類
DeprecationWarning 關(guān)于被棄用的特征的警告
FutureWarning 關(guān)于構(gòu)造將來語義會有改變的警告
OverflowWarning 舊的關(guān)于自動提升為長整型(long)的警告
PendingDeprecationWarning 關(guān)于特性將會被廢棄的警告
RuntimeWarning 可疑的運行時行為(runtime behavior)的警告
SyntaxWarning 可疑的語法的警告
UserWarning 用戶代碼生成的警告

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市螺捐,隨后出現(xiàn)的幾起案子颠悬,更是在濱河造成了極大的恐慌,老刑警劉巖定血,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件赔癌,死亡現(xiàn)場離奇詭異,居然都是意外死亡澜沟,警方通過查閱死者的電腦和手機灾票,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來茫虽,“玉大人刊苍,你說我怎么就攤上這事”粑觯” “怎么了正什?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長悼枢。 經(jīng)常有香客問我埠忘,道長脾拆,這世上最難降的妖魔是什么馒索? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮名船,結(jié)果婚禮上绰上,老公的妹妹穿的比我還像新娘。我一直安慰自己渠驼,他們只是感情好蜈块,可當(dāng)我...
    茶點故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般百揭。 火紅的嫁衣襯著肌膚如雪爽哎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天器一,我揣著相機與錄音课锌,去河邊找鬼。 笑死祈秕,一個胖子當(dāng)著我的面吹牛渺贤,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播请毛,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼志鞍,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了方仿?” 一聲冷哼從身側(cè)響起固棚,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎仙蚜,沒想到半個月后玻孟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡鳍征,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年黍翎,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片艳丛。...
    茶點故事閱讀 40,852評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡匣掸,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出氮双,到底是詐尸還是另有隱情碰酝,我是刑警寧澤,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布戴差,位于F島的核電站送爸,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏暖释。R本人自食惡果不足惜袭厂,卻給世界環(huán)境...
    茶點故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望球匕。 院中可真熱鬧纹磺,春花似錦、人聲如沸亮曹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至式矫,卻和暖如春乡摹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背采转。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工趟卸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人氏义。 一個月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓锄列,卻偏偏與公主長得像,于是被迫代替她去往敵國和親惯悠。 傳聞我的和親對象是個殘疾皇子邻邮,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,851評論 2 361