一句廢話都沒有的Pycharm(十一) 異常處理

2021-10-21 20:13:53 字數 3617 閱讀 6897

句廢話都沒有的pycharm(十一):異常處理

介紹:

1.異常處理

由被動掉坑導致的異常,被動掉坑是指由於使用者的錯誤操作導致的異常。可以通過如下語法讓**繼續執行:

1.1 try-expet

try

可能出現異常的**

except ***:

異常處理**

例如:

#try——except

try:

a=int

(input

('plaesr input a number:'))

b=int

(input

('plaesr input a number:'))

c=a/b

print

('a/b='

,c)#當輸入的b為0時,會出現zerodivisionerror

except zerodivisionerror:

print

('divisor cannot be 0'

)

結果:

1.2多個except結構

當然使用者操作失誤的可能性有很多,因此可以使用多個except結構

try

可能出現異常的**

except ***:

異常處理**

except ***:

異常處理**

except ***:

異常處理**

例如:

#多個except結構

try:

a=int

(input

('plaesr input a number:'))

b=int

(input

('plaesr input a number:'))

c=a/b

print

('a/b='

,c)'''當輸入的b為0時,會出現zerodivisionerror,

當輸入字母時,會出現valueerror'''

except zerodivisionerror:

print

('divisor cannot be 0'

)except valueerror:

print

('input cannot be letter'

)

1.3try—except—else:如果try中沒有異常,執行else語句塊,如果丟擲異常,執行except語句塊。

語法:

try

可能出現異常的**

except ***:

異常處理**

except ***:

異常處理**

except ***:

異常處理**

else

:**塊

例如:

#try——except——else

try:

a=int

(input

('plaesr input a number:'))

b=int

(input

('plaesr input a number:'))

c=a/b

'''當輸入的b為0時,會出現zerodivisionerror,

當輸入字母時,會出現valueerror'''

except zerodivisionerror:

print

('divisor cannot be 0'

)except valueerror:

print

('input cannot be letter'

)else

:print

('a/b='

, c)

#如果try中沒有異常,執行else語句塊

1.4try—except—elset—finally:無論try中是否丟擲異常都會執行,用來釋放try中申請的資源。

語法:

try

可能出現異常的**

except ***:

異常處理**

except ***:

異常處理**

except ***:

異常處理**

else

:**塊

finally:

**塊

例如:

try

: a=

int(

input

('plaesr input a number:'))

b=int

(input

('plaesr input a number:'))

c=a/b

'''當輸入的b為0時,會出現zerodivisionerror,

當輸入字母時,會出現valueerror'''

except zerodivisionerror:

print

('divisor cannot be 0'

)except valueerror:

print

('input cannot be letter'

)else

:print

('a/b='

, c)

finally

:print

('執行結束'

)#無論try中是否丟擲異常都會執行

結果:

使用traceback列印異常資訊。

語法:

import traceback

try:

print

('aaaaaaaaa'

) div=1/

0except

: traceback.print_exc(

)

**:

#traceback

import traceback

try:

print

('aaaaaaaaa'

) div=1/

0except

: traceback.print_exc(

)

結果:

結果告訴我們,在第七行出錯。

杭州趣鏈張帥 趣鏈擁有大廠都沒有的優勢

11月8日,由中國資訊通訊研究院 中國網際網路協會 中國通訊標準化協會和可信區塊鏈推進計畫聯合主辦的2019可信區塊鏈峰會 在京召開。csdn藉此機會,群訪了 杭州趣鏈科技市場總監張帥。趣鏈專注做區塊鏈底層技術,成立時間不長,2016年才成立,之前是在學校裡的乙個實驗室,經過三年時間,從十多個人到現...

該死的Norton,一點專業精神都沒有!

今天跑到老k邊上,跟他拗我們要用的server,回頭跟何局三八了幾句,突然l兄吆喝出來,說我們的乙個程式不能用了,根本開不起來!帶著一堆的納悶跑去看看,好好的乙個win32的有圖示的程式,怎麼變得跟控制台程式一樣了,白板的樣子!開開,果然沒有反應,任務管理器中也看不到程序,扯上何局讓他登入,開開也不...

這乙個學期我都沒有和她友好過

釣起一條大魚的電影 今天的釣起一條大魚的電影,讓我來幫你剪吧,剪起趾甲來顯得很吃力,岸邊,釣起一條大魚,他掂起戰利品,靜候遊客的光臨,這乙個學期我都沒有和她友好過,快樂的成長,奶奶笑面相迎。五顏六色的遊船停泊在碼頭,沒什麼話可說,我跟他就是,剛開始,有難同當,第二天媽媽就買來了滑板,就天天和易鑫泰玩...