python中的try......except......
在python程序中我們有時(shí)會(huì)遇到錯(cuò)誤或者“異常”,這往往意味著整個(gè)程序面臨崩潰。
我們并不希望在運(yùn)行過(guò)程中突然出現(xiàn)此類狀況,而是希望能夠知道錯(cuò)誤類型,并能夠及時(shí)處理它,然后繼續(xù)運(yùn)行。
今天我們介紹一下如何用try......except......通過(guò)判斷錯(cuò)誤類型,進(jìn)行及時(shí)處理,來(lái)保證程序正常運(yùn)行。
這里我們通過(guò)一個(gè)簡(jiǎn)單的小例子來(lái)理解:
題目:寫一個(gè)函數(shù),判斷輸入值(num)的奇偶性,如果是奇數(shù)則返回(3*num+1),偶數(shù)則返回(num//2),直到返回值為1,程序結(jié)束。要求對(duì)輸入的內(nèi)容進(jìn)行驗(yàn)證。
這個(gè)過(guò)程中為避免輸入的內(nèi)容不是整數(shù),引起錯(cuò)誤,我們需要對(duì)輸入的內(nèi)容進(jìn)行錯(cuò)誤處理,具體代碼如下:
def collatz(number):if number%2==0:#print(number//2)return number//2elif number%2==1:#print(3*number+1)return 3*number+1 while 1:try:num=int(input())collatz(num)if collatz(num)==1:breakexcept ValueError:print('請(qǐng)輸入整數(shù)')print(collatz(num))這里定義了一個(gè)函數(shù)collatz()來(lái)判斷輸入值的奇偶性(該題目暫時(shí)不考慮輸入值為0的情況);然后通過(guò)使用 while 和 if 來(lái)實(shí)現(xiàn)“直到返回值為1”結(jié)束。
我們看運(yùn)行結(jié)果:
題目運(yùn)行結(jié)果try......except......異常處理,程序獲取到異常后直接跳到 except,所以 except 放在一次循環(huán)結(jié)束的位置,避免出現(xiàn)變量未定義之類的錯(cuò)誤;try 放在獲取輸入值語(yǔ)句之前即可。
小小的案例希望能夠帶給編程中的你小小的幫助,讓我們一起進(jìn)步,歡迎交流指教。
總結(jié)
以上是生活随笔為你收集整理的python中的try......except......的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 候鸟家人内部宣传口号文案30句
- 下一篇: websocket python爬虫_p