文章目录
1.错误分类
- 1.错误分类
- 2.常见的一些异常
- 3.捕获异常
- 4.try-except-else-finally结构统讲代码:
- 5.抛出异常
Python 有两种错误很容易辨认:语法错误和异常。 语法错误可以通过自己的认真来解决,下面让我们研究异常:即便Python程序的语法是正确的,在运行它的时候,也有可能发生错误。运行期检测到的错误被称为异常。
2.常见的一些异常 错误代码含义NameError名字错误ZeroDivisionError0错误TypeError类型错误SyntaxError语法错误IndexError索引超出序列范围KeyError请求一个不存在的字典关键字IOError输入输出错误AttributeError尝试访问未知的对象属性 3.捕获异常A.捕获单个异常
#捕捉单个异常,输出自己提示信息
try:
print(eval(input('请输入数学表达式:')))#输入3/0
except ZeroDivisionError :
print('被除数不能为0')#被除数不能为0
# 捕捉单个异常,输出报错提示信息
try:
print(1/0)
except ZeroDivisionError as e:
print(e)
B.捕获多个异常
#捕捉多个异常
#一个try和多个except或者元组结构:一个try和except(异常1,异常2...)
# 形式1
try:
a=[1,2,3]
print(a[6])#超出索引
print(1/0)
except IndexError:
print('超出索引')
except ZeroDivisionError:
print('被除数不能为0')
# 形式2
try:
a=[1,2,3]
print(a[2])
print(1/0)#结果:有异常啦!
except (IndexError,ZeroDivisionError):
#弊端:不知道具体是哪个异常
print('有异常啦!')
C.捕获所有异常
#捕捉所有异常两种格式:
#格式1:try--except
try:
a=[1,2]
print(a[9])
except:
print('有异常')
# 格式2:try-except Exception as e:
try:
a = [1, 2]
print(a[9])
except Exception as e:#可以知道具体异常
print(e)
# 格式3:try--except Exception:
try:
a = [1, 2]
print(a[9])
except Exception :#不知道具体异常
print('111')
结果: 出错异常类型和捕捉的异常不一致,会出错结束
#
#不管try有没有异常,最终都会只需finally的代码
try:
print('我有错吗?')
except Exception:
print('只要有异常,就会执行我!')
else:
print('只有没有异常,才会执行我!')
finally:
print('不管有没有异常,一定会执行我!')
结果:
A.抛出系统异常
格式描述raise异常类型(‘描述信息’)当程序执行到raise时候,会自动的触发异常,让程序结束#---------当程序执行到raise,会自动触发异常,让程序结束
while True:
name=input('请输入您的名字:')
try:
if len(name)
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?