python 如何中断程序停止程序退出程序?sys.exit()os._exit()os.kill()

Posted Dontla

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 如何中断程序停止程序退出程序?sys.exit()os._exit()os.kill()相关的知识,希望对你有一定的参考价值。

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

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

1 import sys
2 sys.exit()
3 sys.exit(0)
4 sys.exit(1)

2、os._exit()
效果也是直接退出,不会抛出异常,但是其使用会受到平台的限制,但我们常用的Win32平台和基于UNIX的平台不会有所影响。

知乎上有说是调用了C 语言的 _exit() 函数(未考证)

3、 os.kill()
一般用于直接Kill掉进程,但是只能在UNIX平台上有效。

基本原理:该函数是模拟传统的UNIX函数发信号给进程,其中包含两个参数:一个是进程名,即所要接收信号的进程;一个是所要进行的操作。

操作(第二个参数)的常用取值为:

SIGINT 终止进程 中断进程

SIGTERM 终止进程 软件终止信号

SIGKILL 终止进程 杀死进程

SIGALRM 闹钟信号

参考文章:Python程序的几种退出方式

20230105

sys.exit()是退出当前线程,os._exit()是直接退出程序(相当于程序被kill -9直接杀死),os.kill()用于发signal信号

参考文章1:python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别

参考文章2:Python os.kill()用法及代码示例

以上是关于python 如何中断程序停止程序退出程序?sys.exit()os._exit()os.kill()的主要内容,如果未能解决你的问题,请参考以下文章

如何在函数的 N 次递归调用中中断程序?

退出xshell程序但不中断远程服务的程序(python)

退出xshell程序但不中断远程服务的程序(python)

退出xshell程序但不中断远程服务的程序(python)

sys.exit() os._exit() python在代码里实现退出程序

python模块之sys模块