Python程序退出方式小结

 更新时间:2017年12月09日 16:12:46   作者:ct_usl  
这篇文章主要介绍了Python程序退出方式小结,具有一定参考价值,需要的朋友可以了解下。

对于如何结束一个Python程序或者用Python操作去结束一个进程等,Python本身给出了好几种方法,而这些方式也存在着一些区别,对相关的几种方法看了并实践了下,同时也记录下。

参考:

Python 核心编程 (第二版) 中文高清

1. sys.exit()

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

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

import sys
sys.exit()
sys.exit(0)
sys.exit(1)

该方法引发的是一个SystemExit异常(这是唯一一个不会被认为是错误的异常),当没有设置捕获这个异常将会直接退出程序执行,当然也可以捕获这个异常进行一些其他操作。

2. os._exit()

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

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

3. os.kill()

一般用于直接Kill掉进程,但是只能在UNIX平台上有效。

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

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

SIGINT 终止进程 中断进程

SIGTERM 终止进程 软件终止信号

SIGKILL 终止进程 杀死进程

SIGALRM 闹钟信号

例:

在linux平台上打开VLC视频播放器,然后查看运行的进程:进程号是 4497

然后执行os.kill操作:

执行完之后可以发现VLC视频播放器已经关闭,同时该进程也已经被Kill了。

4.Windows下Kill进程

既然在Linux下能够进行上述操作,那么Windows下也能够有相关的操作。

这里使用的是os.popen(),该方法是用于直接执行系统命令,而在Windows下其实就是使用taskkill来kill掉进程,其基本形式是,

taskkill/pid程序的PID号码

可以直接在CMD窗口下试下这个命令....

可以先打开一个计算器程序,然后使用tasklist查看该程序的pid,这里是620,所以对应的Python代码是:

mport os
if __name__ == "__main__":
pid = 620
os.popen('taskkill.exe /pid:'+str(pid))

总结

以上就是本文关于Python程序退出方式小结的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题。如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

  • Python中自定义函数的教程

    Python中自定义函数的教程

    这篇文章主要介绍了简单讲解Python中内置函数的使用,函数的使用是Python学习当中的基本功,需要的朋友可以参考下
    2015-04-04
  • Python实现对字符串中字符提取校验

    Python实现对字符串中字符提取校验

    众所周知,python之所以很方便在一定程度上是因为随时都可能有人又创作了一个好用又方便的python非标准库。本文就来用Python实现对字符串中字符进行提取校验,需要的可以参考一下
    2022-10-10
  • Pandas分组函数groupby的用法详解

    Pandas分组函数groupby的用法详解

    在数据分析时,经常需要将数据分成不同的群组,pandas中的groupby()函数可以完美地完成各种分组操作,本文就来介绍一下Pandas分组函数groupby的用法,感兴趣的可以了解一下
    2024-01-01
  • Python解压可迭代对象赋值给多个变量详解

    Python解压可迭代对象赋值给多个变量详解

    这篇文章主要为大家介绍了Python赋值多个变量,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • Django用户身份验证完成示例代码

    Django用户身份验证完成示例代码

    这篇文章主要介绍了Django用户身份验证完成示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Python爬虫突破反爬虫机制知识点总结

    Python爬虫突破反爬虫机制知识点总结

    在本篇文章里小编给大家整理了一篇关于Python爬虫突破反爬虫机制知识点总结内容,有需要的朋友们可以跟着学习下。
    2021-11-11
  • 5个Python自动化运维脚本分享

    5个Python自动化运维脚本分享

    Python 是一种流行的编程语言,具有丰富的第三方库和强大的自动化能力,适用于许多不同的领域,许多运维工程师会使用 Python 脚本来自动化运维任务,所以本文为大家整理了5个Python自动化运维脚本,有需要的可以参考下
    2023-08-08
  • python 开发的三种运行模式详细介绍

    python 开发的三种运行模式详细介绍

    这篇文章主要介绍了python 开发的三种运行模式详细介绍的相关资料,需要的朋友可以参考下
    2017-01-01
  • python3音乐播放器简单实现代码

    python3音乐播放器简单实现代码

    这篇文章主要为大家详细介绍了python3音乐播放器简单实现代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法

    python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法

    这篇文章主要介绍了python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法,需要的朋友可以参考下
    2020-02-02

最新评论