python中try Except拋出異常的使用方式
對于python自動化測試同學(xué)來講try的作用太大了。
我們要保證每條用例都能得到我們預(yù)期并在測試報告中給出正確的pass或fail的結(jié)果
就可以通過try語句來很好的實現(xiàn),并且能保證這個pass或fail的結(jié)果是真實的。
一、try語句
通常我們會用下面的格式:

這里當(dāng)xxxx1成立時就執(zhí)行else下的xxxx3語句;
當(dāng)xxxx1不成立時就執(zhí)行except下的xxxx2語句
不管xxxx1是否成立,finally下的語句都會被執(zhí)行到
以上的這些格式就可以用在我們用例的判斷場景中,從而得到pass或fail的結(jié)果
二、except類型(拋出異常的類型)
1、 捕獲所有異常
try:
xxxx1
except Exception as e:
print(e) #打印所有異常到屏幕2、 捕獲類型的異常
try:
xxxx1
except TypeError as e:
print(e) #打印類型異常到屏幕有很多異常的類型,有可以自己寫一個自己的異常類,然后來調(diào)用。
異常類型:
異常名稱 | 描述 |
BaseException | 所有異常的基類 |
SystemExit | 解釋器請求退出 |
KeyboardInterrupt | 用戶中斷執(zhí)行(通常是輸入^C) |
Exception | 常規(guī)錯誤的基類 |
StopIteration | 迭代器沒有更多的值 |
GeneratorExit | 生成器(generator)發(fā)生異常來通知退出 |
SystemExit | Python 解釋器請求退出 |
StandardError | 所有的內(nèi)建標準異常的基類 |
ArithmeticError | 所有數(shù)值計算錯誤的基類 |
FloatingPointError | 浮點計算錯誤 |
OverflowError | 數(shù)值運算超出最大限制 |
ZeroDivisionError | 除(或取模)零 (所有數(shù)據(jù)類型) |
AssertionError | 斷言語句失敗 |
AttributeError | 對象沒有這個屬性 |
EOFError | 沒有內(nèi)建輸入,到達EOF 標記 |
EnvironmentError | 操作系統(tǒng)錯誤的基類 |
IOError | 輸入/輸出操作失敗 |
OSError | 操作系統(tǒng)錯誤 |
WindowsError | 系統(tǒng)調(diào)用失敗 |
ImportError | 導(dǎo)入模塊/對象失敗 |
KeyboardInterrupt | 用戶中斷執(zhí)行(通常是輸入^C) |
LookupError | 無效數(shù)據(jù)查詢的基類 |
IndexError | 序列中沒有沒有此索引(index) |
KeyError | 映射中沒有這個鍵 |
MemoryError | 內(nèi)存溢出錯誤(對于Python 解釋器不是致命的) |
NameError | 未聲明/初始化對象 (沒有屬性) |
UnboundLocalError | 訪問未初始化的本地變量 |
ReferenceError | 弱引用(Weak reference)試圖訪問已經(jīng)垃圾回收了的對象 |
RuntimeError | 一般的運行時錯誤 |
NotImplementedError | 尚未實現(xiàn)的方法 |
SyntaxError | Python 語法錯誤 |
IndentationError | 縮進錯誤 |
TabError | Tab 和空格混用 |
SystemError | 一般的解釋器系統(tǒng)錯誤 |
TypeError | 對類型無效的操作 |
ValueError | 傳入無效的參數(shù) |
UnicodeError | Unicode 相關(guān)的錯誤 |
UnicodeDecodeError | Unicode 解碼時的錯誤 |
UnicodeEncodeError | Unicode 編碼時錯誤 |
UnicodeTranslateError | Unicode 轉(zhuǎn)換時錯誤 |
Warning | 警告的基類 |
DeprecationWarning | 關(guān)于被棄用的特征的警告 |
FutureWarning | 關(guān)于構(gòu)造將來語義會有改變的警告 |
OverflowWarning | 舊的關(guān)于自動提升為長整型(long)的警告 |
PendingDeprecationWarning | 關(guān)于特性將會被廢棄的警告 |
RuntimeWarning | 可疑的運行時行為(runtime behavior)的警告 |
SyntaxWarning | 可疑的語法的警告 |
UserWarning | 用戶代碼生成的警告 |
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
- python try except 捕獲所有異常的實例
- Python使用try except處理程序異常的三種常用方法分析
- Python異常處理:try、except、else、finally的全面解析
- 對python中的try、except、finally 執(zhí)行順序詳解
- Python中的異常處理try/except/finally/raise用法分析
- python try except返回異常的信息字符串代碼實例
- python嵌套try...except如何使用詳解
- Python try except else使用詳解
- Python中?try?/?except?/?else?/?finally?異常處理方法詳解
相關(guān)文章
利用Python實現(xiàn)網(wǎng)絡(luò)測試的示例代碼
Speedtest CLI 為命令行帶來 Speedtest 背后的可信技術(shù)和全球服務(wù)器網(wǎng)絡(luò)。本文將利用它進行網(wǎng)絡(luò)測試,感興趣的小伙伴可以了解一下2022-04-04
使用python本地部署DeepSeek運行時報錯?OSError:?[WinError?193]?%1?不是
文章介紹了在本地使用Python部署DeepSeek時遇到的OSError:?[WinError?193]?錯誤,通過檢查錯誤信息,發(fā)現(xiàn)與numpy版本有關(guān),解決方法是卸載并重新安裝numpy,最終,問題得到解決,感興趣的朋友跟隨小編一起看看吧2025-02-02
python 識別登錄驗證碼圖片功能的實現(xiàn)代碼(完整代碼)
這篇文章主要介紹了python 識別登錄驗證碼圖片功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07
Python的Scrapy框架中的CrawlSpider介紹和使用
這篇文章主要介紹了Python的Scrapy框架中的CrawlSpider介紹和使用,CrawlSpider其實是Spider的一個子類,除了繼承到Spider的特性和功能外,還派生除了其自己獨有的更加強大的特性和功能,其中最顯著的功能就是"LinkExtractors鏈接提取器",需要的朋友可以參考下2023-12-12
python實現(xiàn)學(xué)生管理系統(tǒng)開發(fā)
這篇文章主要為大家詳細介紹了python實現(xiàn)學(xué)生管理系統(tǒng)開發(fā),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-07-07

