python【高级捕获异常】

except

异常(高级) Exception

异常回顾:

try-except 语句 捕获(接收)异常通知,把异常流程变为正常流程

try-finally 语句 执行必须要执行的语句.

raise 语句 发送异常通知,同时进入异常流程

assert 语句 发送AssertionError异常

with 语句

with语句

语法:

with 表达式1 [as 变量1], 表达式2 [as 变量2], …:

语句块

作用:

使用于对资源进行访问的场合,确保使用过程中不管是否发生异常都会

try:
	with open("0.txt", 'a') as file:
		line = file.readlines()
	except OSError:
		print("文件打开失败")
	except ValueError:
		print("文件读写失败")

raise

引发NameError错误:

try:
     s = None
     if s is None:
         print "s 是空对象"
         raise NameError     #如果引发NameError异常,后面的代码将不能执行
     print len(s)  #这句不会执行,但是后面的except还是会走到
except TypeError:
     print "空对象没有长度"
 
s = None
if s is None:
    raise NameError 
print 'is here?' #如果不使用try......except这种形式,那么直接抛出异常,不会执行到这里

触发Exception错误:

def mye( level ):
    if level < 1:
        raise Exception("Invalid level!")
        # 触发异常后,后面的代码就不会再执行
try:
    mye(0)            # 触发异常
except Exception as err:
    print(1,err)
else:
    print(2)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值