这篇文章主要介绍“python异常的概述和利用”,在日常操作中,相信很多人在python异常的概述和利用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python异常的概述和利用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
一、知识回顾:
补充next函数:
#使用变量来表示一个实际的生成器对象
scq=shengChengqi()
print(next(scq))
print(next(scq))
二、异常概述
提问:什么是异常?
三、异常的分类
我们这里讨论的异常主要分为两大类。
一类是自动自动抛出的异常,系统编译器自动判断来抛出异常。
laoliuAge=31/0
抛出异常ZeroDivisionError: division by zero
一类是人工手动抛出的异常,使用raise来手动抛出。
提问:实际中我们如何使用手动来抛出异常?
举例如下:
a=1
if a==1:
raise Exception("这里是老刘抛出的异常")
else:
print("沒有異常")
三、异常的利用
举例:
1.判断是否是int类型的数据
2.判断是否是string类型的数据
归纳一下:
1.我们可以利用异常来做一些数据类型的转换。
2.我们可以利用异常来进行数据类型的判断。
四、重要的内建类异常
Exception所有异常的基类
AttributeError属性引用或属性失败时抛出的异常
OSError当操作系统无法执行任务时抛出的异常
IndexError在使用序列中不存在的索引时抛出的异常
KeyError在使用映射中不存在的键值时抛出的异常
NameError找不到名字(变量)时抛出的异常
SyntaxError在代码为错误形式时触发
TypeError在内建操作或函数应用于错误类型的对象时抛出的异常
ValueError在内建操作或者函数应用于正确类型的对象,但该对象使用了不适合的值时抛出的异常
ZeroDivisionError在除法或者取模操作的第2个参数值为0时抛出的异常
五、总结强调
1.理解什么是异常?
2.理解异常的分类
3.掌握手动抛出异常的方法
4.学会利用异常,把异常的抛出为己所用
本节源代码:
# def shengChengqi():
# list1=[3,5,2]
# for i in list1:
# yield i
#
# #使用变量来表示一个实际的生成器对象
# scq=shengChengqi()
# print(next(scq))
# print(next(scq))
# print(next(scq))
# print(next(scq))
# laoliuAge=31/0
# a=1
# if a==1:
# raise Exception("这里是老刘抛出的异常")
# else:
# print("沒有異常")
b="2"
c=int(b)+2
# try:
# c=b+2
# print(c)
# except:
# print("程序有點小问题,请联系管理员")
到此,关于“python异常的概述和利用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。