色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

Python錯誤的處理方法

瀏覽:2日期:2022-07-19 16:49:45

異常的捕獲與處理

什么是錯誤

簡而言之:還沒運行,在語法解析的時候,就發現語法存在問題,這個時候就是錯誤。

什么是異常

簡而言之:代碼寫好之后,無明顯語法錯誤(這個時候,編輯器不知道有錯,語法解析時也不知道有錯),但是運行的時候,會發生錯誤,這個時候稱之為異常。

什么是警告

import warningsdef fxn(): warnings.warn('deprecated', DeprecationWarning)

異常怎么處理

異常的處理形式如下:

try: 你要做的可能會發生異常的事except 可能會發生的異常: 發生異常之后要做的事except 可能會發生的異常2: 發生異常之后要做的事2finally: 最終要做的事情

比如下面的代碼:

try: print(10/0)except ZeroDivisionError: print('除數不能為0')

這個時候再次運行,就不會再出現異常

在平時的開發中,也會使用預定義清理的操作,來避免因為異常而導致程序奔潰,比如在進行IO操作的時候,可以使用:

with open('myfile.txt') as f: for line in f: print(line, end='')

這樣一旦運行時發生異常,程序會自動幫你關閉文件,避免整個程序奔潰

自定義異常與異常的拋出

雖然python中提供了非常多的內置異常類,但是,在平時開發中,針對特定的業務,可能需要自定義異常,此時怎么辦?

通過自定義繼承Exception類的類,可以實現異常的自定義

class MyException(Exception): def __init__(self, parameter): err = ’非法入參{0},分母不能為0’.format(parameter) Exception.__init__(self, err) self.parameter = parameter

當我們代碼中碰到某種特殊業務情況,需要向調用方拋出自定義異常,可以使用 raise 關鍵字

from chapter12.my_exception import MyExceptiondef my_fun(x): if x == 0: raise MyException(x) return 12/xprint(my_fun(-12))

我們在捕獲異常之后,也可以直接將異常拋出,此時直接使用 raise 關鍵字即可

def my_func(): try: print(10 / 0) except ZeroDivisionError: print('除數不能為0') # 此處直接將捕獲的異常拋出 raise

單元測試

什么是單元測試

單元測試(英語:Unit Testing)又稱為模塊測試,是針對程序模塊(軟件設計的最小單位)來進行正確性檢驗的測試工作。程序單元是應用的最小可測試部件。在過程化編程中,一個單元就是單個程序、函數、過程等;對于面向對象編程,最小單元就是方法,包括基類(超類)、抽象類、或者派生類(子類)中的方法。 簡而言之:就是寫一段代碼,用來驗證另一段代碼在特定情況下的正確性

單元測試的好處與“壞處”

好處:減少bug、提高代碼質量、可以放心重構(在未來修改實現的時候,可以保證代碼的行為仍舊是正確的) '壞處':占用開發時間,尤其是在起步階段

在python中,如何編寫單元測試

1、新建python文件,編寫具體業務代碼

class MyTest():def my_add(self, a, b):return a + b

2、右鍵類名,選擇Go TO ==》test,或者直接 ctrl+shift +t

Python錯誤的處理方法

3、填寫好相應的模塊名及測試類名,點擊ok,此時pycharm會幫我們自動創建測試模塊及類

Python錯誤的處理方法

4、編寫測試代碼,并執行單元測試

import unittestfrom unittest import TestCasefrom test import MyTestclass TestMyTest(TestCase):def test_add(self): s= MyTest() self.assertEqual(s.my_add(1,5),6)if __name__ == '__main__':unittest.main()

以上就是Python錯誤的處理方法的詳細內容,更多關于Python錯誤處理的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 202z欧美成人 | 亚洲欧美精品一区 | 女子张开腿让男人桶视频 | 天天躁天天碰天天看 | av狼论坛 | 日韩中文字幕精品久久 | 成人性生免费视频 | 国产免费爽爽视频免费可以看 | 成年人在线免费 | 亚洲午夜精品久久久久久抢 | 国产精品久久国产三级国电话系列 | 兔子先生节目在线观看免费 | 真人毛片免费全部播放完整 | 久久久国产精品福利免费 | 成人a免费视频播放 | 在线视频一二三区 | 九九精品视频在线观看九九 | 欧美日韩免费一区二区三区 | 天天五月天丁香婷婷深爱综合 | 亚洲加勒比久久88色综合一区 | 国产精品免费精品自在线观看 | 久青草视频在线 | 欧美精品成人一区二区在线观看 | 一级一片在线播放在线观看 | 国产成人精品亚洲日本在线观看 | 日本一区二区免费在线观看 | 成人国产一区二区三区 | 欧洲亚洲综合一区二区三区 | 成人精品视频在线观看播放 | 久久久久一级片 | 久久国产精品1区2区3区网页 | 黄色三级网站在线观看 | 国产真真人女人特级毛片 | 亚洲午夜久久久久国产 | 久久99国产综合精品 | 欧美国产日韩一区二区三区 | 欧美做爱毛片 | 午夜两性视频 | 巨大热杵在腿间进进出出视频 | 亚洲成年网站在线观看 | 日本精品一在线观看视频 |