python中oserror捕获_Python assert异常处理(一看即懂)
Python 还支持断言语法。在一套程序完成之前,编程者并不知道程序可能会在哪里报错,或是触发何种条件的报错,因此使用断言语法可以有效地做好异常检测,并适时触发和抛出异常。
Python 中使用 assert 语句声明断言,其语法为:
assert 表达式 [, "断言异常提示信息"]
Python 首先检测表达式结果是否为 True,若为 True 则继续向下执行,否则将触发断言异常,并显示断言异常提示信息,后续代码捕获该异常并做进一步处理。例如:
def testAssert(x):
assert x < 1,'无效值'
print ("有效值")
testAssert(1)
上述代码的运行结果如下所示:
>>> def testAssert(x):
... assert x < 1,'无效值'
... print ("有效值")
>>> testAssert(1)
Traceback (most recent call last):
File "", line 1, in
testAssert(1)
File "", line 2, in testAssert
assert x < 1,'无效值'
AssertionError: 无效值
可见,当 assert 语句判断的表达式结果为 False 时触发了断言异常,此时可以使用 try…except 语句捕获并做进一步处理,例如:
def testAssert(x):
assert x < 1, '无效值'
print("有效值")
try:
testAssert(1)
except Exception:
print("捕获成功")
上述代码的运行结果如下所示:
>>> def testAssert(x):
... assert x < 1, '无效值'
... print("有效值")
>>> try:
... testAssert(1)
... except Exception:
... print("捕获成功")
捕获成功
Python解释器内置的预定义标准异常如表 1 所示。
表 1:Python 解释器内置的预定义标准异常
异常名称
描述
ArithmeticError
所有数值计算错误的基类
AssertionError
断言语句失败
AttributeError
对象无此属性
BaseException
所有异常的基类
DeprecationWarning
关于被弃用的特征的警告
EnvironmentError
操作系统相关的错误的基类
EOFError
到达文件尾(EOF, End-of-File)错误
Exception
常规错误的基类
FloatingPointError
浮点计算错误
FutureWarning
关于将来语义会有改变的警告
GeneratorExit
生成器发生异常通知退出
ImportError
引入模块/对象失败
IndentationError
缩进错误
IndexError
序列中无此索引
IOError
输入/输出操作失败
Keyboardlnterrupt
用户中断执行
KeyError
映射中无此键
LookupError
无效数据查询的基类
MemoryError
内存溢出错误
NameError
未声明/初始化对象,名称调用错误
NotImplementedError
尚未实现的方法
OSError
操作系统错误
OverflowError
数值运算超出最大限制
PendingDeprecationWarning
关于特性将会被废弃的警告
ReferenceError
弱引用试图访问已经被回收的对象
RuntimeError
一般运行时错误
RuntimeWarning
运行时行为警告
StandardError
所有内建标准异常的基类
StopIteration
迭代器没有更多的值
SyntaxError
Python语法错误
SyntaxWarning
语法警告
SystemError
一般的解释器系统错误
SystemExit
解释器请求退出
TabError
Tab和空格混用
TypeError
对类型无效的操作
UnboundLocalError
访问未初始化的本地变量
UnicodeDecodeError
Unicode解码错误
UnicodeEncodeError
Unicode编码错误
UnicodeError
Unicode相关错误
UnicodeTranslateError
Unicode转换错误
UserWarning
用户代码生成的警告
ValueError
传入无效参数
Warning
各种警告的基类
WindowsError
系统调用失败
ZeroDivisionError
除(或取模)零错误
python中oserror捕获_Python assert异常处理(一看即懂)相关推荐
- Python中的浅拷贝和深拷贝(一看就懂!!!)
浅拷贝和深拷贝一直傻傻的分不清,甚至有时候会理解反.今天就简单总结一下python中的浅拷贝和深拷贝. 总结 最直观的理解就是: 1.深拷贝,拷贝的程度深,自己新开辟了一块内存,将被拷贝内容全部拷贝过 ...
- python中if控制语句_Python 极简教程(十二)逻辑控制语句 if else
计算机软件之所以能够对不同的情况进行不同的处理,就是我们在编码的时候,通过逻辑控制语句,告诉软件在不同的情况下应该做什么处理. 比如我们在登录的时候,那么当你输入正确的账号密码和错误的账号密码,完全是 ...
- python中exception方法_python中try except处理程序异常的三种常用方法
如果你在写python程序时遇到异常后想进行如下处理的话,一般用try来处理异常,假设有下面的一段程序:try: 语句1 语句2 . . 语句N except .........: do someth ...
- python中config命令_Python config.config方法代码示例
本文整理汇总了Python中config.config方法的典型用法代码示例.如果您正苦于以下问题:Python config.config方法的具体用法?Python config.config怎么 ...
- li在python中啥意思_Python中*和**的区别
在Python中,(*)接收的参数,将形成一个元组,(* *)将接收到的参数存储在一个字典.我们可以看到,任何长度的foo方法可以接收参数并把它们存储在一个元组\u2026打印(args)\u2026 ...
- python中的常量_Python中的变量和常量
本文主要介绍Python中的变量和常量,包括变量的命名规范,使用注意事项 -------------- 完美的分割线 --------------- 1.变量 1.1.变量理解 1)什么是变量 变量即 ...
- python中定义数据结构_Python中的数据结构—简介
python中定义数据结构 You have multiples algorithms, the steps of which require fetching the smallest value ...
- python中assert_在Python中带有示例的assert关键字
python中assert Python断言关键字 (Python assert keyword) assert is a keyword (case-sensitive) in python, it ...
- 异常处理python 空气质量问题_python的异常处理
异常处理 什么是异常? 首先要清楚,什么是异常,异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触 ...
最新文章
- Nginx负载均衡的详细配置及使用案例
- MySQL的主从服务器配置
- R语言scan函数读取文件为向量或者列表格式实战
- PHP开发中常见的安全问题详解和解决方法
- Linux下的各种文件阅读器
- 进入DRF和ANGULAR的整合学习,这三篇入门内容一定要学好的
- 了解回归:迈向机器学习的第一步
- 持续集成与自动化部署 - jenkins sonar代码质量管理平台 部署和基础使用(五)...
- LeetCode MySQL 1571. 仓库经理
- panasonic 松下被黑
- OFDM系统MATLAB仿真
- asp.net 两个控件放一行_思维导图?试试这两个宝藏网站吧
- Building Web Parts for Microsoft SharePoint Products and Technologies
- 小D课堂 - 零基础入门SpringBoot2.X到实战_第8节 数据库操作之整合Mybaties和事务讲解_35、事务介绍和常见的隔离级别,传播行为...
- MySQL数据库无法启动的简单排错
- 《嵌入式-STM32开发指南》第三部分 外设篇 - 第5章 光敏传感器
- Pointer Network指针网络
- 英语在线听力翻译器_英语翻译_在线英语听力室
- App Thinning(为什么苹果app上传时的包比在appStore下载下来的包大很多)
- MIPI DSI转LVDS东芝TC358775XBG视频解码芯片,RK3399点LVDS屏必备