python結(jié)束程序運(yùn)行的四種方法
方法1:采用sys.exit(0),正常終止程序,從圖中可以看到,程序終止后shell運(yùn)行不受影響。
方法2:采用os._exit(0)關(guān)閉整個shell,從圖中看到,調(diào)用sys._exit(0)后整個shell都重啟了(RESTART Shell)。
方法3:采用Ctrl+C快捷鍵,強(qiáng)制終止程序執(zhí)行,可以看到,程序由“KeyboardInterrupt”(鍵盤中斷)終止了,且不影響shell繼續(xù)執(zhí)行。
方法4:最簡單粗暴的終止程序方法莫過于點擊shell右上角的“x”,整個shell都終止了,程序果斷也終止!
方法一:使用sys模塊
Python中的sys模塊提供了一個叫做exit()的函數(shù),該函數(shù)可以用于立即終止程序的執(zhí)行。exit()函數(shù)接受一個可選的參數(shù),用于指定程序退出時的狀態(tài)碼,默認(rèn)為0。
示例代碼:
import sys print('程序開始執(zhí)行') sys.exit(0) print('這行代碼永遠(yuǎn)不會被執(zhí)行')
當(dāng)程序執(zhí)行到sys.exit(0)時,程序會立即停止執(zhí)行,不會執(zhí)行后面的代碼。
方法二:使用os模塊
與sys模塊類似,os模塊也提供了一個名為_exit()的函數(shù),該函數(shù)可以用于立即終止程序的執(zhí)行。_exit()函數(shù)接受一個整數(shù)參數(shù),用于指定程序退出時的狀態(tài)碼,默認(rèn)為0。
示例代碼:
import os print('程序開始執(zhí)行') os._exit(0) print('這行代碼永遠(yuǎn)不會被執(zhí)行')
當(dāng)程序執(zhí)行到os._exit(0)時,程序會立即停止執(zhí)行,不會執(zhí)行后面的代碼。
方法三:使用KeyboardInterrupt異常
我們可以使用Python的一個內(nèi)置異常KeyboardInterrupt來終止程序的執(zhí)行。當(dāng)程序運(yùn)行時按下"Ctrl+C"鍵,Python會拋出KeyboardInterrupt異常,我們可以在程序中捕獲這個異常并終止程序的執(zhí)行。
示例代碼:
try: while True: pass except KeyboardInterrupt: print('程序被手動終止')
當(dāng)程序運(yùn)行時按下"Ctrl+C"鍵,程序會被手動終止,并輸出"程序被手動終止"。
方法四:使用atexit模塊
如果我們想在程序退出前執(zhí)行一些清理工作,比如關(guān)閉文件、釋放資源等操作,我們可以使用Python的atexit模塊。
atexit模塊提供了一個register()函數(shù),該函數(shù)可以用于注冊程序退出時需要執(zhí)行的函數(shù)。這些函數(shù)會在程序退出前按照注冊順序被依次調(diào)用。
示例代碼:
import atexit def exit_handler(): print('程序執(zhí)行完畢') atexit.register(exit_handler) print('程序開始執(zhí)行')
當(dāng)程序執(zhí)行完畢后,會自動調(diào)用exit_handler()函數(shù)并輸出"程序執(zhí)行完畢"。
到此這篇關(guān)于python結(jié)束程序運(yùn)行的四種方法的文章就介紹到這了,更多相關(guān)python結(jié)束程序運(yùn)行內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python標(biāo)準(zhǔn)庫之collections包的使用教程
這篇文章主要給大家介紹了Python標(biāo)準(zhǔn)庫之collections包的使用教程,詳細(xì)介紹了collections中多個集合類的使用方法,相信對大家具有一定的參考價值,需要的朋友們下面隨小編一起來學(xué)習(xí)學(xué)習(xí)吧。2017-04-04python讀取word文檔,插入mysql數(shù)據(jù)庫的示例代碼
今天小編就為大家分享一篇python讀取word文檔,插入mysql數(shù)據(jù)庫的示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11深入理解python?生成器、迭代器、動態(tài)新增屬性及方法
這篇文章主要介紹了python?生成器、迭代器、動態(tài)新增屬性及方法,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-04-04python通過opencv實現(xiàn)圖片裁剪原理解析
這篇文章主要介紹了python通過opencv實現(xiàn)圖片裁剪原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-01-01