python結(jié)束程序運(yùn)行的四種方法
方法1:采用sys.exit(0),正常終止程序,從圖中可以看到,程序終止后shell運(yùn)行不受影響。

方法2:采用os._exit(0)關(guān)閉整個(gè)shell,從圖中看到,調(diào)用sys._exit(0)后整個(gè)shell都重啟了(RESTART Shell)。

方法3:采用Ctrl+C快捷鍵,強(qiáng)制終止程序執(zhí)行,可以看到,程序由“KeyboardInterrupt”(鍵盤中斷)終止了,且不影響shell繼續(xù)執(zhí)行。

方法4:最簡(jiǎn)單粗暴的終止程序方法莫過于點(diǎn)擊shell右上角的“x”,整個(gè)shell都終止了,程序果斷也終止!

方法一:使用sys模塊
Python中的sys模塊提供了一個(gè)叫做exit()的函數(shù),該函數(shù)可以用于立即終止程序的執(zhí)行。exit()函數(shù)接受一個(gè)可選的參數(shù),用于指定程序退出時(shí)的狀態(tài)碼,默認(rèn)為0。
示例代碼:
import sys
print('程序開始執(zhí)行')
sys.exit(0)
print('這行代碼永遠(yuǎn)不會(huì)被執(zhí)行')當(dāng)程序執(zhí)行到sys.exit(0)時(shí),程序會(huì)立即停止執(zhí)行,不會(huì)執(zhí)行后面的代碼。
方法二:使用os模塊
與sys模塊類似,os模塊也提供了一個(gè)名為_exit()的函數(shù),該函數(shù)可以用于立即終止程序的執(zhí)行。_exit()函數(shù)接受一個(gè)整數(shù)參數(shù),用于指定程序退出時(shí)的狀態(tài)碼,默認(rèn)為0。
示例代碼:
import os
print('程序開始執(zhí)行')
os._exit(0)
print('這行代碼永遠(yuǎn)不會(huì)被執(zhí)行')當(dāng)程序執(zhí)行到os._exit(0)時(shí),程序會(huì)立即停止執(zhí)行,不會(huì)執(zhí)行后面的代碼。
方法三:使用KeyboardInterrupt異常
我們可以使用Python的一個(gè)內(nèi)置異常KeyboardInterrupt來終止程序的執(zhí)行。當(dāng)程序運(yùn)行時(shí)按下"Ctrl+C"鍵,Python會(huì)拋出KeyboardInterrupt異常,我們可以在程序中捕獲這個(gè)異常并終止程序的執(zhí)行。
示例代碼:
try:
while True:
pass
except KeyboardInterrupt:
print('程序被手動(dòng)終止')當(dāng)程序運(yùn)行時(shí)按下"Ctrl+C"鍵,程序會(huì)被手動(dòng)終止,并輸出"程序被手動(dòng)終止"。
方法四:使用atexit模塊
如果我們想在程序退出前執(zhí)行一些清理工作,比如關(guān)閉文件、釋放資源等操作,我們可以使用Python的atexit模塊。
atexit模塊提供了一個(gè)register()函數(shù),該函數(shù)可以用于注冊(cè)程序退出時(shí)需要執(zhí)行的函數(shù)。這些函數(shù)會(huì)在程序退出前按照注冊(cè)順序被依次調(diào)用。
示例代碼:
import atexit
def exit_handler():
print('程序執(zhí)行完畢')
atexit.register(exit_handler)
print('程序開始執(zhí)行')當(dāng)程序執(zhí)行完畢后,會(huì)自動(dòng)調(diào)用exit_handler()函數(shù)并輸出"程序執(zhí)行完畢"。
到此這篇關(guān)于python結(jié)束程序運(yùn)行的四種方法的文章就介紹到這了,更多相關(guān)python結(jié)束程序運(yùn)行內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python利用pandas計(jì)算多個(gè)CSV文件數(shù)據(jù)值的實(shí)例
下面小編就為大家分享一篇Python利用pandas計(jì)算多個(gè)CSV文件數(shù)據(jù)值的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-04-04
Python進(jìn)階學(xué)習(xí)之你真的懂元組嗎?
在我們學(xué)習(xí)python的過程中,對(duì)元組的介紹通常是成為”不可變的列表“,但是這其實(shí)并沒有完全的概括元組的功能。在本文中,我們將會(huì)介紹元組作為記錄的功能,話不多說我們開始吧2023-04-04
python二維碼操作:對(duì)QRCode和MyQR入門詳解
今天小編就為大家分享一篇python二維碼操作:對(duì)QRCode和MyQR入門詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06
開啟Django博客的RSS功能的實(shí)現(xiàn)方法
這篇文章主要介紹了開啟Django博客的RSS功能的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02

