您好,登錄后才能下訂單哦!
這篇文章主要介紹“python異常處理并調試的方法”,在日常操作中,相信很多人在python異常處理并調試的方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”python異常處理并調試的方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
前言:
異常是錯誤出現時,可以在正常的控制流程之外采取的行為。
try: age = int(input("請輸入年齡:")) if age >= 18: print("你已成年") else: print("你未成年") except ValueError as error: print("輸入不合法") print(error) print("程序結束")
請輸入年齡:abc
輸入不合法
invalid literal for int() with base 10: 'abc'
程序結束
若沒異常沒執行except,則執行else里的語句
try: age = int(input("請輸入年齡:")) except ValueError as error: print("輸入不合法") else: if age >= 18: print("你已成年") else: print("你未成年") print("程序結束")
請輸入年齡:a
輸入不合法
程序結束
finally 無論是否發生異常,都得執行,如關閉文件
try: file = open("text.txt", "w") # 打開文件 s = "hello world" file.write(s) # 操作文件 except: print("操作異常") finally: # 無論是否發生異常,都得執行 file.close() # 關閉文件 print("關閉文件")
方法一:
try: age = int(input("請輸入年齡:")) x = 10 / age except ValueError: print("請輸入整數") except ZeroDivisionError: print("年齡不能為0") else: print(f"age is {age}") print(f"x is {x}")
方法二:
try: age = int(input("請輸入年齡:")) x = 10 / age except (ValueError, ZeroDivisionError): print("請輸入合理的年齡") else: print(f"age is {age}") print(f"x is {x}")
try語句中,遇到了異常才會拋出異常
raise是為了主動拋出異常
def is_adult(age): if age < 18: raise ValueError("你還未成年") try: age = int(input("請輸入年齡:")) is_adult(age) # 已經拋出<18的異常,except不會執行。如果是其他abc異常,仍會執行except except ValueError as e: print(e) print("continue")
請輸入年齡:1
你還未成年
continue
到此,關于“python異常處理并調試的方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。