日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python异常处理操作语句_异常处理语句(2)

發布時間:2024/1/23 python 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python异常处理操作语句_异常处理语句(2) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.?try...except語句的嵌套

這種語句就是多except語句的多處理方式,下面我們通過一個例題來學習一下try...except的語句嵌套。def?test():

n?=?int(input('有3個語句需要測試,請選擇(1/2/3):'))

if?n?==?1:#keyError異常情況

my_dict?=?{'dotcpp':?123}

print(my_dict['dot'])

elif?n?==?2:#IndexError異常

my_list?=?[1,?2,?3,?4,?5]

print(my_list[100])

elif?n?==?3:#NameError異常

print('不存在的變量dotcpp:',?dotcpp)

try:

try:

try:

test()

except?KeyError:

print('KeyError異常')

except?IndexError:

print('IndexError異常')

except?NameError:

print('NameError異常')

我們分別測試1/2/3,輸出結果如下:有3個語句需要測試,請選擇(1/2/3):1

KeyError異常

有3個語句需要測試,請選擇(1/2/3):2

IndexError異常

有3個語句需要測試,請選擇(1/2/3):3

NameError異常

在這個例題中,我們首先在定義的函數中輸入一個判斷量n,然后根據n的值給出了三種異常的情況,然后我們在最后嵌套了3個try..except語句,也就是說test()語句的結果會經過三層判斷。

2.?try...except...finally語句

一個完整的異常處理機制是離不開finally語句的,這個語句的作用是不管我們的程序中是否有異常發生,finally語句下的代碼都會被執行,它的語法格式為:try:

block

except?[typeerror]:

deal1

finally:

deal2

我們通過一個例子來看一下這種結構:def?test():

n?=?int(input('請輸入一個整數:'))

print(n)

try:

test()

except?KeyError:

print('KeyError異常')

finally:

print('finally語句已執行')

我們分別輸入6和dotcpp來看一下輸出結果:請輸入一個整數:5

5

finally語句已執行

請輸入一個整數:dotcpp

finally語句已執行

Traceback?(most?recent?call?last):

File?"C:/Users/test.py",?line?5,?in?

test()

File?"C:/Users/test.py",?line?2,?in?test

n?=?int(input('請輸入一個整數:'))

ValueError:?invalid?literal?for?int()?with?base?10:?'dotcpp'

通過這個例子我們可以看出,無論我們的程序是否出現異常,finally語句都會執行。

3.?try...except...else語句

我們在上面學習的finally語句是無論語句是否發生異常都會執行的語句,下面我們來學習的try...except...else語句當程序中未發生異常的時候才會執行,它的語法結構為:try:

block

except?[typeerror?]:

deal1

else:

deal2

下面我們看例子:def?test():

n?=?int(input('請輸入一個整數:'))

print('輸入值為:',n)

try:

test()

except?ValueError:

print('ValueError異常')

else:

print('當前程序未出現異常')

輸出結果為:請輸入一個整數:5

輸入值為:?5

當前程序未出現異常

當我們輸入值為dotcpp時請輸入一個整數:dotcpp

ValueError異常

我們可以看出當程序異常的時候else語句并沒執行,這些語句的區分難度并不大,大家可以通過例子去練習一下這幾種常用的異常處理語句。

總結

以上是生活随笔為你收集整理的python异常处理操作语句_异常处理语句(2)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。