前言
本章记录了python文件与异常的处理机制
一、处理异常
python通过traceback来告诉你运行时发生了某种意外情况,在python世界里叫做异常。
二、使用步骤
1.先尝试在恢复
代码如下(示例):
try:
你的代码(可能导致的运行时错误)
except:
错误恢复代码
- 放过错误代码:对于这个数据行最好能忽略不符合期望格式的数据行。如果split()方法调用导致异常可以报告这是一个错误,并且pass继续执行代码。
data=open('sketch.txt')
try:
(role,line_spoken)=each.split(':',1)
print(role,end='')
print(line_spoken,end='')
except:
pass
data.close()
- 缺少处理文件时会产生一个IoError,并生成一个tracback。
- 异常处理更关注代码主要用来做什么,抽取出感兴趣的数据输出在屏幕上。
2.特定指定异常
- 如果你的代码设计为一种特定类型的错误,一定要在except代码上指定错误类型,这样一来就可以八一般化的异常处理代码转变为具有特定性。
代码如下(示例):
#打开文件遍历每一行输出到屏幕上,如果没有该文件执行IoError
try:
data=open(sketch.txt)
for each_line in data:
try:
(role,line_spoken)=each.split(':',1)
print(role,end='')
print(line_spoken,end='')
except Value Error:#指定要处理时运行时错误
pass
data.close()
except IoError:#指定要处理时的运行时错误
print('The data file is missing!')
3.术语
异常(exception):因运行时错误而出现,会产生一个trackback。
trackback:回溯,是出现运行时错误的一个描述。
总结
这里简单介绍了python异常处理机制,下一章介绍持久储存:需要一种策略不论是否出现IoError都会运行这些代码,你希望不论发生什么都要关闭文件。所以用finally拓展try。