检测和处理异常 上下文管理 触发异常 断言 标准异常
检测和处理异常
第一种语句:try-except
try:
pass
except Exception, e: # 捕获所有异常
raise e # 抛出捕获的异常
第二种语句:try-except-except-except
try:
pass
except Exception1, reason1:
raise
except Exception2, reason2:
raise
except Exception3, reason3:
raise
第三种语句:处理多个异常的except语句
try:
pass
except (Exception1,Exception2), reason:
raise
第四种语句:try-except-else语句
try:
pass
except Exception, e:
raise e
else: # try范围中没有检测到异常时,执行else语句
pass
第五种语句:try-except-finally语句
try:
pass
except Exception, e:
raise e
finally: # 无论异常是否发生,是否捕捉到,都会执行该语句
pass
第六种语句:try-except-else-finally
try:
pass
except Exception, e:
raise
else:
pass
finally:
pass
第七种语句:try-finally
try:
pass
finally:
pass
上下文管理
with open('/etc/pas','r') as f:
for eachline in f:
触发异常
try:
pass
except Exception, e:
raise
断言
断言语句:如果断言成功不采取任何措施,否则触发断言错误的异常
assert 1 == 0
Traceback (most recent call last):
File "E:codeDAda.py", line 5, in
assert 1 == 0
AssertionError