python程序退出方式[sys.exit() os._exit() os.kill() os.popen(...)]

知乎说明

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 闹钟信号

例如:

4. Windows下Kill进程

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

taskkill /pid 程序的PID号码

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

可以先打开一个计算器程序,然后使用tasklist查看该程序的pid,这里是711

import os

if __name__ == "__main__":

pid = 711

os.popen('taskkill.exe /pid:'+str(pid))

python退出程序-【转】python 退出程序的方式相关推荐

  1. python回车键退出_python退出程序

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python退出程序的方式有两种:os._exit(),sys.exit() 1 ...

  2. 【python教程入门学习】Python函数定义及传参方式详解(4种)

    这篇文章主要介绍了Python函数定义及传参方式详解(4种),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 一.函数初识 1.定 ...

  3. 2021-01-14python函数传参是传值还是传引用? 参数若是简单类型是传值 若是对象类型则是传引用,python是兼容两者传参方式的

    python函数传参是传值还是传引用? 首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题. ...

  4. Python 发送 email 的三种方式

    Python发送email的三种方式,分别为使用登录邮件服务器.使用smtp服务.调用sendmail命令来发送三种方法 本文原文自米扑博客:Python 发送 email 的三种方式 Python发 ...

  5. php 根据ip 扫描端口,python实现指定ip端口扫描方式

    在Linux中判断一台主机是否可达,可以使用ping命令,而判断端口是否打开,可以使用telnet命令,但是telnet命令没有超时时间的参数,使用起来不是很方便,那么可以利用Python来完成一个端 ...

  6. python爬虫下载-python爬虫之下载文件的方式总结以及程序实例

    python爬虫之下载文件的方式以及下载实例 目录 第一种方法:urlretrieve方法下载 第二种方法:request download 第三种方法:视频文件.大型文件下载 实战演示 第一种方法: ...

  7. python绘制条形图-Python数据分析条形图的各种绘制方式

    # 导入模块 import matplotlib.pyplot as plt import numpy as np import pandas as pd # 导入数据 traffic_volume ...

  8. python语言有几种编程方式_零基础自学python语言,有哪几种方法?龟叔说:这套教程带你入门...

    第一我要说的是:你应该先了解python语言的起源,这句话对于自学python的小白来说,本身就是耍流氓. 我们从根源上分析这个问题,这个问题是(从零基础如何自学python编程)? 我的提取关键字: ...

  9. Py之qrcode:调用python的qrcode库两种方式生成二维码、带logo的二维码

    Py之qrcode:调用python的qrcode库两种方式生成二维码.带logo的二维码 目录 python编程实现生成二维码 1.第一种方式-纯文本 2.第二种方式-带logo

  10. python支持的几种并发方式进行简单的总结

    本文对python支持的几种并发方式进行简单的总结. Python支持的并发分为多线程并发与多进程并发(异步IO本文不涉及).概念上来说,多进程并发即运行多个独立的程序,优势在于并发处理的任务都由操作 ...

最新文章

  1. 如何使用dmidecode命令查看硬件信息
  2. Python实现进度条总结
  3. SpringBoot的email发送ssl协议格式
  4. 苹果平板怎么卸载软件_苹果TF签名丨怎么卸载testflight下载的应用?
  5. tornado使用mysql 连接池(torndb)
  6. hdoj 4790 Just Random 【数学】
  7. 缓存DNS服务器和主从DNS服务器的快速搭建详解——续
  8. Kettle处理300万条数据-问题整理
  9. 如何全面系统的自学Java?(附2022最新整理Java学习路线)
  10. STM32 vcap引脚
  11. 什么是DNS云解析?云解析和普通解析有什么区别?
  12. 算法竞赛入门经典 UVa815 Flooded!
  13. iPhone手机怎么投影到MacPro上
  14. Ubuntu强制关机后无法启动
  15. 硬核照片显示,魔方即视感
  16. ubuntu12.04将tgz文件解压到指定目录
  17. zabbix监控客户端时前端配置不成功
  18. 微软SQL Server2012增长对Hadoop的支撑
  19. 如何使用ODB(How to use odb On windows)
  20. You probably need to get an updated matplotlibrc file from解决方法

热门文章

  1. 关系型数据库与NOSQL
  2. Spark入门实战系列--5.Hive(下)--Hive实战
  3. Kendo Web UI Grid数据绑定,删除,编辑,并把默认英文改成中文
  4. RAC 实例不能启动 ORA-1589 signalled during ALTER DATABASE OPEN
  5. singleInstance和singleTask导致startActivityForResult回调失败
  6. nginx基本配置与参数说明
  7. 大图剪切工具,大图分割工具
  8. rtp协议详解/rtcp协议详解
  9. Windows与Linux拷贝数据
  10. ASP.NET 3.5技术专题发布