国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > python的異常

python的異常

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-11-06 20:17:06 1699273026

python中的異常是指程序中的例外,違例,影響程序正常執(zhí)行的情況。

異常機(jī)制是指程序出現(xiàn)錯(cuò)誤后,程序的處理方法。

當(dāng)出現(xiàn)錯(cuò)誤后,程序的執(zhí)行流程發(fā)生改變,程序的控制權(quán)轉(zhuǎn)移到異常處理。

如果程序執(zhí)行過(guò)程中發(fā)生了異常,我們沒(méi)有進(jìn)行異常處理,那么程序就會(huì)中止執(zhí)行下面的代碼。但是如果我們進(jìn)行了異常處理,程序會(huì)繼續(xù)執(zhí)行下面的代碼。

異常的例子:

NameError:嘗試訪問(wèn)一個(gè)未申明的變量

>>>foo

Traceback(innermostlast):File"",line1,in?

NameError:name'foo'isnotdefined

NameError表示我們?cè)L問(wèn)了一個(gè)沒(méi)有初始化的變量.在Python解釋器的符號(hào)表沒(méi)有找到那個(gè)另人討厭的變量.我們將在后面的兩章討論名稱空間,現(xiàn)在大家可以認(rèn)為它們是連接名字和對(duì)象的"地址簿"就可以了.任何可訪問(wèn)的變量必須在名稱空間里列出.訪問(wèn)變量需要由解釋器進(jìn)行搜索,如果請(qǐng)求的名字沒(méi)有在任何名稱空間里找到,那么將會(huì)生成一個(gè)NameError異常.

ZeroDivisionError:除數(shù)為零

>>>1/0

Traceback(innermostlast):File"",line1,in?

ZeroDivisionError:integerdivisionormodulobyzero

我們邊的例子使用的是整數(shù),但事實(shí)上,任何數(shù)值被零除都會(huì)導(dǎo)致一個(gè)ZeroDivisionError

異常.

SyntaxError:Python解釋器語(yǔ)法錯(cuò)誤

>>>for

File"",line1EditByVheavens

for

^

SyntaxError:invalidsyntax

SyntaxError異常是唯一不是在運(yùn)行時(shí)發(fā)生的異常.它代表Python代碼中有一個(gè)不正確的結(jié)構(gòu),在它改正之前程序無(wú)法執(zhí)行.這些錯(cuò)誤一般都是在編譯時(shí)發(fā)生,Python解釋器無(wú)法把你的腳本轉(zhuǎn)化為Python字節(jié)代碼.當(dāng)然這也可能是你導(dǎo)入一個(gè)有缺陷的模塊的時(shí)候.

IndexError:請(qǐng)求的索引超出序列范圍

>>>aList=[]

>>>aList[0]

Traceback(innermostlast):File"",line1,in?

IndexError:listindexoutofrange

IndexError在你嘗試使用一個(gè)超出范圍的值索引序列時(shí)引發(fā).

KeyError:請(qǐng)求一個(gè)不存在的字典關(guān)鍵字

>>>aDict={'host':'earth','port':80}

>>>printaDict['server']Traceback(innermostlast):

File"",line1,in?KeyError:server

映射對(duì)象,例如字典,是依靠關(guān)鍵字(keys)訪問(wèn)數(shù)據(jù)值的.如果使用錯(cuò)誤的或是不存在的鍵請(qǐng)求字典就會(huì)引發(fā)一個(gè)KeyError異常.

IOError:輸入/輸出錯(cuò)誤

>>>f=open("blah")Traceback(innermostlast):

File"",line1,in?

IOError:[Errno2]Nosuchfileordirectory:'blah'

類似嘗試打開(kāi)一個(gè)不存在的磁盤文件一類的操作會(huì)引發(fā)一個(gè)操作系統(tǒng)輸入/輸出(I/O)錯(cuò)誤.任何類型的I/O錯(cuò)誤都會(huì)引發(fā)IOError異常.

AttributeError:嘗試訪問(wèn)未知的對(duì)象屬性

>>>classmyClass(object):

...pass

...

>>>myInst=myClass()

>>>myInst.bar='spam'

>>>myInst.bar

'spam'

>>>myInst.foo

Traceback(innermostlast):File"",line1,in?

AttributeError:foo

以上內(nèi)容為大家介紹了python的異常,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。http://www.kei0345678.cn/

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT