python的異常處理

python的異常處理

一苫纤、 基本格式

# 示例一:importrequeststry:# 嘗試進(jìn)行下面操作玻孟,如果可以執(zhí)行,就執(zhí)行下面代碼ret = requests.get('http://www.google.com')? ? print(ret.text)exceptExceptionase:# 如果不可以執(zhí)行(平時(shí)會(huì)報(bào)錯(cuò))樟凄,這時(shí)不會(huì)報(bào)錯(cuò)烧给,執(zhí)行下面代碼print('請(qǐng)求異常')# 示例二:try:? ? v = []? ? v[11111]# IndexError類型的異常exceptValueErrorase:# ValueError是一個(gè)類,繼承Exception侵浸,只能捕獲到ValueError類型的異常passexceptIndexErrorase:# IndexError是一個(gè)類旺韭,繼承Exception政供,只能捕獲到IndexError類型的異常passexceptExceptionase:# Exception是一個(gè)類厂庇,可以捕獲到所有異常print(e)# e是Exception類的對(duì)象,存儲(chǔ)了一個(gè)錯(cuò)誤信息

finally

try:? ? int('asdf')exceptExceptionase:? ? print(e)finally:? ? print('最后無論對(duì)錯(cuò)都會(huì)執(zhí)行')# 特殊情況:deffunc():try:? ? ? ? int('asdf')exceptExceptionase:return123finally:? ? ? ? print('最后')# 無論對(duì)錯(cuò)伯诬,函數(shù)中遇到return澳腹,也會(huì)執(zhí)行织盼,執(zhí)行完后再returnfunc()

建議:書寫函數(shù)或功能時(shí),建議用try包裹一下酱塔,避免報(bào)錯(cuò)

示例

# 1. 寫函數(shù)沥邻,函數(shù)接受一個(gè)列表,請(qǐng)將列表中的元素每個(gè)都 +100deffunc(arg):result = []foriteminarg:ifitem.isdecimal():? ? ? ? ? ? result.append(int(item) +100)returnresult# 2. 寫函數(shù)去羊娃,接受一個(gè)列表唐全。列表中都是url,請(qǐng)?jiān)L問每個(gè)地址并獲取結(jié)果importrequestsdeffunc1(url_list):result = []try:forurlinurl_list:? ? ? ? ? ? response = requests.get(url)? ? ? ? ? ? result.append(response.text)exceptExceptionase:passreturnresultdeffunc2(url_list):result = []forurlinurl_list:try:? ? ? ? ? ? response = requests.get(url)? ? ? ? ? ? result.append(response.text)exceptExceptionase:passreturnresult# 這兩個(gè)函數(shù)執(zhí)行結(jié)果是不一樣的蕊玷,是try所處的位置不同導(dǎo)致的func1(['http://www.baidu.com','http://www.google.com','http://www.bing.com'])func2(['http://www.baidu.com','http://www.google.com','http://www.bing.com'])

二邮利、 主動(dòng)觸發(fā)異常

try:? ? int('123')raiseException('XXX')# 代碼中主動(dòng)拋出異常exceptExceptionase:? ? print(e)# XXX

示例:

deffunc():result =Truetry:withopen('x.log',mode='r',encoding='utf-8')asf:? ? ? ? ? ? data = f.read()if'alex'notindata:raiseException()exceptExceptionase:? ? ? ? result =Falsereturnresult

三、 自定義異常

classMyException(Exception):# 自定義異常垃帅,繼承Exceptionpasstry:raiseMyException('asdf')# 主動(dòng)觸發(fā)自定義異常延届,只有自定義異常自己和Exception能捕獲到exceptMyExceptionase:? ? print(e)

勤勤懇懇更博,點(diǎn)點(diǎn)滴滴記錄贸诚; 格式小問題方庭,望諒解; 有錯(cuò)誤酱固,歡迎指點(diǎn)二鳄!異常處理

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市媒怯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌髓窜,老刑警劉巖扇苞,帶你破解...
    沈念sama閱讀 212,599評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件欺殿,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡鳖敷,警方通過查閱死者的電腦和手機(jī)脖苏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,629評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來定踱,“玉大人棍潘,你說我怎么就攤上這事⊙旅模” “怎么了亦歉?”我有些...
    開封第一講書人閱讀 158,084評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長畅哑。 經(jīng)常有香客問我肴楷,道長,這世上最難降的妖魔是什么荠呐? 我笑而不...
    開封第一講書人閱讀 56,708評(píng)論 1 284
  • 正文 為了忘掉前任赛蔫,我火速辦了婚禮,結(jié)果婚禮上泥张,老公的妹妹穿的比我還像新娘呵恢。我一直安慰自己,他們只是感情好媚创,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,813評(píng)論 6 386
  • 文/花漫 我一把揭開白布渗钉。 她就那樣靜靜地躺著,像睡著了一般筝野。 火紅的嫁衣襯著肌膚如雪晌姚。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,021評(píng)論 1 291
  • 那天歇竟,我揣著相機(jī)與錄音挥唠,去河邊找鬼。 笑死焕议,一個(gè)胖子當(dāng)著我的面吹牛宝磨,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播盅安,決...
    沈念sama閱讀 39,120評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼唤锉,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了别瞭?” 一聲冷哼從身側(cè)響起窿祥,我...
    開封第一講書人閱讀 37,866評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蝙寨,沒想到半個(gè)月后晒衩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體嗤瞎,經(jīng)...
    沈念sama閱讀 44,308評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,633評(píng)論 2 327
  • 正文 我和宋清朗相戀三年听系,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了贝奇。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,768評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡靠胜,死狀恐怖掉瞳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情浪漠,我是刑警寧澤陕习,帶...
    沈念sama閱讀 34,461評(píng)論 4 333
  • 正文 年R本政府宣布,位于F島的核電站郑藏,受9級(jí)特大地震影響衡查,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜必盖,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,094評(píng)論 3 317
  • 文/蒙蒙 一拌牲、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧歌粥,春花似錦塌忽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,850評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至嬉探,卻和暖如春擦耀,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背涩堤。 一陣腳步聲響...
    開封第一講書人閱讀 32,082評(píng)論 1 267
  • 我被黑心中介騙來泰國打工眷蜓, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人胎围。 一個(gè)月前我還...
    沈念sama閱讀 46,571評(píng)論 2 362
  • 正文 我出身青樓吁系,卻偏偏與公主長得像,于是被迫代替她去往敵國和親白魂。 傳聞我的和親對(duì)象是個(gè)殘疾皇子汽纤,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,666評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容

  • 在執(zhí)行程序的過程中,可能會(huì)遇到多多少少的“意外情況”福荸,比如除數(shù)為 0蕴坪,文件找不到,變量未聲明等敬锐。解釋器在發(fā)現(xiàn)這些異...
    柏丘君閱讀 1,004評(píng)論 0 1
  • 3.5異常處理 1.bug 語法錯(cuò)誤運(yùn)行時(shí)錯(cuò)誤語義錯(cuò)誤 2.Debug 3.異常處理 對(duì)于運(yùn)行時(shí)可能產(chǎn)生的錯(cuò)誤辞嗡,我...
    人生苦短_我用Python閱讀 532評(píng)論 0 0
  • python中常見的異常 NameError:嘗試訪問一個(gè)未申明的變量 ZeroDivisionError:除數(shù)為...
    junson閱讀 485評(píng)論 0 1
  • 先講一個(gè)一年三季的故事: 有一天捆等,孔子的一個(gè)學(xué)生在門外掃地,來了一個(gè)客人問他:“你是誰靶摇?”他很自豪地說:“我是孔...
    清韻漫彈閱讀 913評(píng)論 3 8
  • 家鄉(xiāng)的三月三谒养,這是廣西壯族獨(dú)有的習(xí)俗挺狰。蒸五色糯米飯,做艾草糍粑买窟,接著去祭祖丰泊。 五色糯米飯是一早醒來就能吃的。吃過糯...
    柳心裁閱讀 472評(píng)論 0 0