结束运行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工程师面试题 与Python Web相关
Jan 14 Python
Python编程pygame模块实现移动的小车示例代码
Jan 03 Python
python3.6 实现AES加密的示例(pyCryptodome)
Jan 10 Python
对numpy的array和python中自带的list之间相互转化详解
Apr 13 Python
Python实现按中文排序的方法示例
Apr 25 Python
Python运维之获取系统CPU信息的实现方法
Jun 11 Python
用Python读取几十万行文本数据
Dec 24 Python
浅谈Python中eval的强大与危害
Mar 13 Python
Python BeautifulSoup [解决方法] TypeError: list indices must be integers or slices, not str
Aug 07 Python
Django 简单实现分页与搜索功能的示例代码
Nov 07 Python
django xadmin action兼容自定义model权限教程
Mar 30 Python
Pycharm导入anaconda环境的教程图解
Jul 31 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中截取中文字符串的代码小结
2011/07/17 PHP
codeigniter教程之多文件上传使用示例
2014/02/11 PHP
PHP中模糊查询并关联三个select框
2017/06/19 PHP
在JavaScript中使用JSON数据
2016/02/15 Javascript
bootstrap布局中input输入框右侧图标点击功能
2016/05/16 Javascript
JS正则表达式学习之贪婪和非贪婪模式实例总结
2016/12/26 Javascript
vue2实现移动端上传、预览、压缩图片解决拍照旋转问题
2017/04/13 Javascript
探究react-native 源码的图片缓存问题
2017/08/24 Javascript
vue的keep-alive中使用EventBus的方法
2019/04/23 Javascript
JS实现处理时间,年月日,星期的公共方法示例
2019/05/31 Javascript
手把手教你 CKEDITOR 4 实现Dialog 内嵌 IFrame操作详解
2019/06/18 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
2019/07/23 Javascript
layui操作列按钮个数和文字颜色的判断实例
2019/09/11 Javascript
ES5新增数组的实现方法
2020/05/12 Javascript
Python警察与小偷的实现之一客户端与服务端通信实例
2014/10/09 Python
python爬虫基本知识
2018/03/05 Python
Python标准库shutil用法实例详解
2018/08/13 Python
python3实现指定目录下文件sha256及文件大小统计
2019/02/25 Python
python获取Pandas列名的几种方法
2019/08/07 Python
Python3简单爬虫抓取网页图片代码实例
2019/08/26 Python
python实现的批量分析xml标签中各个类别个数功能示例
2019/12/30 Python
Python3 Click模块的使用方法详解
2020/02/12 Python
Python代码中如何读取键盘录入的值
2020/05/27 Python
Python如何爬取b站热门视频并导入Excel
2020/08/10 Python
如何从csv文件构建Tensorflow的数据集
2020/09/21 Python
python合并多个excel文件的示例
2020/09/23 Python
Python实现王者荣耀自动刷金币的完整步骤
2021/01/22 Python
宝拉珍选澳大利亚官方购物网站:Paula’s Choice澳大利亚
2016/09/13 全球购物
最好的意大利皮夹克:D’Arienzo
2018/12/04 全球购物
vue 中 get / delete 传递数组参数方法
2021/03/23 Vue.js
电脑租赁公司创业计划书
2014/01/08 职场文书
会计专业求职信范文
2015/03/19 职场文书
2015年政教主任工作总结
2015/07/23 职场文书
求职自我评价参考范文
2019/05/16 职场文书
一篇文章告诉你如何实现Vue前端分页和后端分页
2022/02/18 Vue.js
默认网关不可用修复后过一会又不好使了解决方法
2022/04/08 数码科技