当前位置:首页 > 日记本 > 正文内容

python退出程序,终止运行

zhangchap3年前 (2021-09-11)日记本528

python退出程序运行方式常用的两种:

os._exit() 和 sys.exit()

1. sys.exit()

import os,sys
try:
    sys.exit(0) # 0 和 1 都是一样。
except:
    print('Program is dead.')
finally:
    print('clean-up')

执行该语句会直接退出程序,这也是经常使用的方法,也不需要考虑平台等因素的影响,一般是退出Python程序的首选方法.

该方法中包含一个参数status,默认为0,表示正常退出,也可以为1,表示异常退出.

sys.exit() 会抛出一个异常: SystemExit,如果这个异常没有被捕获,那么python解释器将会退出。如果有捕获该异常的代码,那么这些代码还是会执行。

一般在python脚本中都选择使用sys.exit函数退出程序,可以有个异常捕获机制来做清理扫尾的工作,程序会更加灵活健壮。

2.os._exit()

import os,sys
try:
    os._exit(0)
except:
    print('Program is dead.')
finally:
    print('clean-up')

os._exit()会直接将python程序终止,之后的所有代码都不会继续执行。

sys.exit()会引发一个异常:SystemExit,如果这个异常没有被捕获,那么python解释器将会退出。如果有捕获此异常的代码,那么这些代码还是会执行。捕获这个异常可以做一些额外的清理工作。0为正常退出,其他数值(1-127)为不正常,可抛异常事件供捕获。

在python线程中,使用sys.exit(包括exit和quit),都只能实现退出子线程,而不能退出主线程;如果在子线程中调用os._exit,可以实现整个程序的退出。

分享给朋友:

相关文章

【轻断食】测试了半个月没什么用

【轻断食】测试了半个月没什么用

无意间在某个地方看到了一个提轻断食的,国外一本介绍一种减肥方法的书,年前在掌阅上买了一本书,在上下地铁上研究了几个早上,觉得可行性很好,过了年就测试了一下,但是试了半个月,不增不减...

CDN下 Nginx开启PC/M识别跳到对应的域名下访问,css/js死循环问题

背景: 新做了一个网站:   服务器操作系统:Linux;   WEB服务器版本:nginx/1.16.1; 问题:...

火狐添加自定义搜索引擎

直接网址搜索自定义添加:https://mycroftproject.com/...

Nginx+PHP,PHP如何优化配置?

具体修改FPM配置文件参数: 若你的php日志出现: WARNING: [pool www] seems busy (you may need to increase pm.sta...

python xpath语法总结

python xpath语法总结:常用的://1.从任意节点开始/2.从根节点开始//div/p3.div下的p标签//div[@class="hrzz_bottom"]/ul/l...

python jieba分词

import jieba from jieba.analyse import tfidf words = jieba.lcut('...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。