结束运行python的方法


Posted in Python onJune 16, 2020

有时当一个条件成立的情况下,需要终止程序,可以使用sys.exit()退出程序。sys.exit()会引发一个异常

1.如果这个异常没有被捕获,那么python编译器将会退出,后面的程序将不会执行。

2.如果这个异常被捕获(try...except...finally),捕获这个异常可以做一些额外的清理工作,后面的程序还会继续执行。

注:0为正常退出,其他数值(1-127)为不正常,可抛异常事件供捕获。

另一种终止程序的方法os._exit()

一般情况下使用sys.exit()即可,一般在fork出来的子进程中使用os._exit()

import os, sys
import pandas as pd
import numpy as np
df=pd.DataFrame({'a':[1,2,3,4],
        'b':['a','b','c',np.nan],
        'c':['2017-09','2017-09-12','2017-08-22','2017-07-11'],
        'd':['2017-09','2017-12','2017-08','2017-07']})
t=df.iloc[2,:].tolist()
df.columns=t
print(df)
c=[1,2,5]
dic={1:2,2:3,3:4}
#print(dic.keys())
new_col=[]
for x in c:
  if x not in dic.keys():
    new_col.append(x)
if new_col:
  print(new_col)
  sys.exit(1)
print('ssss')

知识点扩展:

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函数发信号给进程,其中包含两个参数:一个是进程名,即所要接收信号的进程;一个是所要进行的操作。

到此这篇关于结束运行python的方法的文章就介绍到这了,更多相关如何结束运行python内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python使用smtplib模块发送电子邮件的流程详解
Jun 27 Python
python三引号输出方法
Feb 27 Python
python3的print()函数的用法图文讲解
Jul 16 Python
一行Python代码制作动态二维码的实现
Sep 09 Python
在OpenCV里使用特征匹配和单映射变换的代码详解
Oct 23 Python
Django Form and ModelForm的区别与使用
Dec 06 Python
Python实现隐马尔可夫模型的前向后向算法的示例代码
Dec 31 Python
TensorFlow2.0:张量的合并与分割实例
Jan 19 Python
Tensorflow 定义变量,函数,数值计算等名字的更新方式
Feb 10 Python
使用python matploblib库绘制准确率,损失率折线图
Jun 16 Python
PyCharm 2020.1版安装破解注册码永久激活(激活到2089年)
Sep 24 Python
一篇文章带你搞定Ubuntu中打开Pycharm总是卡顿崩溃
Nov 02 Python
深入理解Python 多线程
Jun 16 #Python
keras.layer.input()用法说明
Jun 16 #Python
python适合做数据挖掘吗
Jun 16 #Python
Python+PyQt5+MySQL实现天气管理系统
Jun 16 #Python
Python实现SMTP邮件发送
Jun 16 #Python
python语言中有算法吗
Jun 16 #Python
python爬虫可以爬什么
Jun 16 #Python
You might like
使用PHP模拟HTTP认证
2006/10/09 PHP
PHP 截取字符串 分别适合GB2312和UTF8编码情况
2009/02/12 PHP
php将服务端的文件读出来显示在web页面实例
2016/10/31 PHP
PC端微信扫码支付成功之后自动跳转php版代码
2017/07/07 PHP
图片自动缩小的js代码,用以防止图片撑破页面
2007/03/12 Javascript
JavaScript监测ActiveX控件是否已经安装过的代码
2008/09/02 Javascript
jQuery TextBox自动完成条
2009/07/22 Javascript
jquery 最简单的属性菜单
2009/10/08 Javascript
js 去除字符串第一位逗号的方法
2014/06/07 Javascript
JS中mouseover和mouseout多次触发问题如何解决
2016/06/06 Javascript
jQuery EasyUI中的日期控件DateBox修改方法
2016/11/09 Javascript
canvas实现粒子时钟效果
2017/02/06 Javascript
微信小程序 向左滑动删除功能的实现
2017/03/10 Javascript
基于JQuery的Ajax方法使用详解
2017/08/16 jQuery
详解Layer弹出层样式
2017/08/21 Javascript
vue-cli3 项目优化之通过 node 自动生成组件模板 generate View、Component
2019/04/30 Javascript
JS实现的字符串数组去重功能小结
2019/06/17 Javascript
Vue 动态组件components和v-once指令的实现
2019/08/30 Javascript
Handtrack.js库实现实时监测手部运动(推荐)
2021/02/08 Javascript
微信小程序组件生命周期的踩坑记录
2021/03/03 Javascript
python将文本分每两行一组并保存到文件
2018/03/19 Python
python实现周期方波信号频谱图
2018/07/21 Python
PyCharm设置每行最大长度限制的方法
2019/01/16 Python
python+OpenCV实现车牌号码识别
2019/11/08 Python
美国领先的在线旅游网站:Orbitz
2018/11/05 全球购物
实现向右循环移位
2014/07/31 面试题
System.Array.CopyTo()和System.Array.Clone()有什么区别
2016/06/20 面试题
what is the difference between ext2 and ext3
2013/11/03 面试题
财务会计人员求职的自我评价
2014/01/13 职场文书
活动总结报告怎么写
2014/07/03 职场文书
大学辅导员述职报告
2015/01/10 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
植物园观后感
2015/06/11 职场文书
Python机器学习之基础概述
2021/05/19 Python
浅谈react useEffect闭包的坑
2021/06/08 Javascript
vue选项卡切换的实现案例
2022/04/11 Vue.js