我使用自定義異常來區分Python的默認異常和異常。在python中設置自定義異常的退出碼
當我引發異常時,是否有辦法定義自定義退出代碼?
class MyException(Exception):
pass
def do_something_bad():
raise MyException('This is a custom exception')
if __name__ == '__main__':
try:
do_something_bad()
except:
print('Oops') # Do some exception handling
raise
在此代碼中,主函數在try代碼中運行幾個函數。 當我捕捉到一個異常後,我想重新提高它以保留回溯堆棧。
的問題是,「養」永遠退出1. 我想退出與自定義退出代碼(我的自定義異常)的腳本,並在任何其他情況下1號出口。
我看了這個解決方案,但它不是我要找: Setting exit code in Python when an exception is raised
該解決方案迫使我在每個腳本中我使用的異常是否是默認還是自定義的檢查。
我希望我的自定義異常能夠告訴raise函數使用什麼退出代碼。
我完全同意。你指出的那個老問題不得不將整個程序封裝在'try' /'except'子句中來解決這個問題。 – Alfe