python exit出錯(cuò)原因整理
Python程序有兩種退出方式: os._exit() 和 sys.exit()。我查了一下這兩種方式的區(qū)別。
os._exit() 會(huì)直接將python程序終止,之后的所有代碼都不會(huì)執(zhí)行。 sys.exit() 會(huì)拋出一個(gè)異常: SystemExit,如果這個(gè)異常沒(méi)有被捕獲,那么python解釋器將會(huì)退出。如果有捕獲該異常的代碼,那么這些代碼還是會(huì)執(zhí)行。
例如
import ostry: os._exit(0)except: print(’Program is dead.’)
這個(gè)print是不會(huì)打印的,因?yàn)闆](méi)有異常被捕獲。
import systry: sys.exit(0)except: print(’Program is dead.’)finally: print(’clean-up’)
這里兩個(gè)print都可以打印,因?yàn)閟ys.exit()拋出了異常。
結(jié)論
使用sys.exit()來(lái)退出程序比較優(yōu)雅,調(diào)用它能引發(fā)SystemExit異常,然后我們可以捕獲這個(gè)異常做些清理工作。而os._exit()將python解
釋器直接退出,后面的語(yǔ)句都不會(huì)執(zhí)行。一般情況下用sys.exit()就行;os._exit()可以在os.fork()產(chǎn)生的子進(jìn)程里使用。
到此這篇關(guān)于python exit出錯(cuò)原因整理的文章就介紹到這了,更多相關(guān)python exit出錯(cuò)是什么原因內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. ajax請(qǐng)求添加自定義header參數(shù)代碼2. ASP基礎(chǔ)知識(shí)VBScript基本元素講解3. Python requests庫(kù)參數(shù)提交的注意事項(xiàng)總結(jié)4. IntelliJ IDEA導(dǎo)入jar包的方法5. Gitlab CI-CD自動(dòng)化部署SpringBoot項(xiàng)目的方法步驟6. Kotlin + Flow 實(shí)現(xiàn)Android 應(yīng)用初始化任務(wù)啟動(dòng)庫(kù)7. 利用CSS3新特性創(chuàng)建透明邊框三角8. python爬蟲(chóng)學(xué)習(xí)筆記之pyquery模塊基本用法詳解9. ASP中解決“對(duì)象關(guān)閉時(shí),不允許操作。”的詭異問(wèn)題……10. python操作mysql、excel、pdf的示例
