概述
Python程序有兩種退出方式:
os._exit()
和
sys.exit()
。我查了一下這兩種方式的區(qū)別。
os._exit()
會(huì)直接將python程序終止,之后的所有代碼都不會(huì)執(zhí)行。
sys.exit()
會(huì)拋出一個(gè)異常:
SystemExit
,如果這個(gè)異常沒有被捕獲,那么python解釋器將會(huì)退出。如果有捕獲該異常的代碼,那么這些代碼還是會(huì)執(zhí)行。
舉個(gè)例子
import
os
try
:
os
.
_exit
(
0
)
except
:
print
(
'Program is dead.'
)
這個(gè)
print
是不會(huì)打印的,因?yàn)闆]有異常被捕獲。
import
sys
try
:
sys
.
exit
(
0
)
except
:
print
(
'Program is dead.'
)
finally
:
print
(
'clean-up'
)
這里兩個(gè)
print
都可以打印,因?yàn)?
sys.exit()
拋出了異常。
結(jié)論
使用
sys.exit()
來退出程序比較優(yōu)雅,調(diào)用它能引發(fā)
SystemExit
異常,然后我們可以捕獲這個(gè)異常做些清理工作。而
os._exit()
將python解釋器直接退出,后面的語句都不會(huì)執(zhí)行。
一般情況下用
sys.exit()
就行;
os._exit()
可以在
os.fork()
產(chǎn)生的子進(jìn)程里使用。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元

