python exit出錯原因整理
Python程序有兩種退出方式: os._exit() 和 sys.exit()。我查了一下這兩種方式的區(qū)別。
- os._exit() 會直接將python程序終止,之后的所有代碼都不會執(zhí)行。
- sys.exit() 會拋出一個異常: SystemExit,如果這個異常沒有被捕獲,那么python解釋器將會退出。如果有捕獲該異常的代碼,那么這些
代碼還是會執(zhí)行。
例如
import os
try:
os._exit(0)
except:
print('Program is dead.')
這個print是不會打印的,因為沒有異常被捕獲。
import sys
try:
sys.exit(0)
except:
print('Program is dead.')
finally:
print('clean-up')
這里兩個print都可以打印,因為sys.exit()拋出了異常。
結(jié)論
使用sys.exit()來退出程序比較優(yōu)雅,調(diào)用它能引發(fā)SystemExit異常,然后我們可以捕獲這個異常做些清理工作。而os._exit()將python解
釋器直接退出,后面的語句都不會執(zhí)行。一般情況下用sys.exit()就行;os._exit()可以在os.fork()產(chǎn)生的子進程里使用。
到此這篇關(guān)于python exit出錯原因整理的文章就介紹到這了,更多相關(guān)python exit出錯是什么原因內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
5個Python中實現(xiàn)文字轉(zhuǎn)語音模塊的使用講解
這篇文章主要為大家詳細介紹了5個Python中實現(xiàn)文字轉(zhuǎn)語音模塊的使用,文中的示例代碼講解詳細,對我們深入掌握Python有一定的幫助,需要的可以參考下2023-11-11
基于Python實現(xiàn)RLE格式分割標注文件的格式轉(zhuǎn)換
本文將以Airbus Ship Detection Challenge為例,為大家詳細講解Python實現(xiàn)RLE格式分割標注文件格式轉(zhuǎn)換的方法,感興趣的可以了解一下2022-08-08
使用python對excle和json互相轉(zhuǎn)換的示例
今天小編就為大家分享一篇使用python對excle和json互相轉(zhuǎn)換的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10
一文搞懂Pandas數(shù)據(jù)透視的4個函數(shù)的使用
今天主要和大家分享Pandas中四種有關(guān)數(shù)據(jù)透視的通用函數(shù),在數(shù)據(jù)處理中遇到這類需求時,能夠很好地應對,快跟隨小編一起學習一下吧2022-06-06
Python實現(xiàn)的插入排序算法原理與用法實例分析
這篇文章主要介紹了Python實現(xiàn)的插入排序算法原理與用法,簡單描述了插入排序的原理,并結(jié)合實例形式分析了Python實現(xiàn)插入排序的相關(guān)操作技巧,需要的朋友可以參考下2017-11-11

