新聞中心
Python程序有兩種退出方式: os._exit() 和 sys.exit()。我查了一下這兩種方式的區(qū)別。

成都創(chuàng)新互聯(lián)公司專注于吉利企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),成都商城網(wǎng)站開發(fā)。吉利網(wǎng)站建設(shè)公司,為吉利等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
os._exit() 會直接將python程序終止,之后的所有代碼都不會執(zhí)行。
sys.exit() 會拋出一個異常: SystemExit,如果這個異常沒有被捕獲,那么python解釋器將會退出。如果有捕獲該異常的代碼,那么這些
代碼還是會執(zhí)行。
例如
import os
try:
os._exit(0)
except:
print('Program is dead.')這個print是不會打印的,因?yàn)闆]有異常被捕獲。
import sys
try:
sys.exit(0)
except:
print('Program is dead.')
finally:
print('clean-up')這里兩個print都可以打印,因?yàn)閟ys.exit()拋出了異常。
結(jié)論
使用sys.exit()來退出程序比較優(yōu)雅,調(diào)用它能引發(fā)SystemExit異常,然后我們可以捕獲這個異常做些清理工作。而os._exit()將python解
釋器直接退出,后面的語句都不會執(zhí)行。一般情況下用sys.exit()就行;os._exit()可以在os.fork()產(chǎn)生的子進(jìn)程里使用。
推薦學(xué)習(xí)《python教程》。
當(dāng)前標(biāo)題:創(chuàng)新互聯(lián)Python教程:pythonexit出錯是什么原因
當(dāng)前網(wǎng)址:http://www.dlmjj.cn/article/djesicp.html


咨詢
建站咨詢
