• 技术文章 >Python技术 >Python基础教程

    python 如何结束进程

    爱喝马黛茶的安东尼爱喝马黛茶的安东尼2019-10-10 16:52:40原创12442

    对于如何结束一个Python程序或者用Python操作去结束一个进程等,Python本身给出了好几种方法,而这些方式也存在着一些区别。

    1、sys.exit()

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

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

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

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

    相关推荐:《Python教程

    2、os._exit()

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

    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代码是:

    import os
    if __name__ == "__main__":
    pid = 620
    os.popen('taskkill.exe /pid:'+str(pid))
    专题推荐:python 结束 进程
    上一篇:python 如何获取毫秒级系统时间 下一篇:怎么用dos编译python

    相关文章推荐

    • linux运行python怎么结束• python如何结束程序运行

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网