2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 潭州课堂25班:Ph05201 第十四课 异常 处理 (课堂笔记)

潭州课堂25班:Ph05201 第十四课 异常 处理 (课堂笔记)

时间:2022-01-31 08:44:38

相关推荐

潭州课堂25班:Ph05201 第十四课 异常 处理  (课堂笔记)

程序难免会出现错误 :

语法错误 ;

逻辑错误;

AttributeError -->> 试图访问一个对象没有的属性,

IOError ----》》 输入输出异常

IndeError ---->> 下标索引起出序例范围,

KeyError --->>>> 试图访问字典里不存在的key

NameError ---->>. 使用一个还未被赋值的对象变量,

SyntaxError ----->>> 语法错误

TypeError ----->>>> 传入对象类型与要求的不符合,

UnboundLocalError ----->> 试图访问一个清空未被设置的局部变量,

ValueError -----》》》 传入一个调用者不期望的值,

捕捉异常:

try:

….

….

except:

print ('出错')

try:

f = open('我为什么是个文件.txt')

print (f. read() )

f.close()

except OSError:

print ('文件出错')

找不到”” 我为什么是个文件.txt”这个文件

try:

f = open('我为什么是个文件.txt')

print (f. read() )

f.close()

except OSError as reason:

print ('文件出错\n出错的原因是:'+str(reason))

———》》》》

文件出错

出错的原因是:[Errno 2] No such file or directory: '我为什么是个文件.txt'

try:

x = 1+'1'

f = open('我为什么是个文件.txt')

print (f. read() )

f.close()

except (OSError, TypeError):# 只要育错就抱错

print ('出错')

————》》》

出错

异常处理的细分写法:

# 异常处理的细分写法:try :li = [11,22]li[0]int ('abc')except IndexError as e: # 一层比一层高的级别print('IndexError',e)except ValueError as f:print('ValueError',f)except Exception as h:print('Exception',h)else:# 如果上边不出错,就执行这里的代码print('else')finally:# 不管出不出错,这里都 要执行,print('......')

断言,主动触发异常

主动触发异常:try:raise Exception('主动触发异常')except Exception as e:print(e)断言:print(123)assert 1==1# 断言,条件成立 往下走,不成立 报错print(456)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。