python 代码片段15

#coding=utf-8
'''
如果运行时发生异常的话,解释器会查找相应的处理函数。要是在当前函数里没有
找到的话,它会将异常传递给上层的调用函数,看看那里能不能处理。如果在在最
外层还没有找到的话,解释器就会推出,同时打印出traceback以便让用户找出
错误产生的原因。
'''

try:
	f=open(filename,'r')
except IOError,e:
	return False,str(e)

#如果一个语句可以处理多个异常类型

try:
	process_some_data()
except (TypeError,ValueError),e:
	print "ERROR:you provide invalid data",e


# 或者
try:
	process_some_data()
except (TypeError,ValueError),e:
	print "ERROR:you provide invalid data",e
except ArithmeticError,e:
	print "ERROR:some math error occurred",e
except Exception,e:
	print "ERROR:you provide invalid data",e


# finally子句

try:
	get_mutex()
	do_some_stuff()
finally:
	free_mutex()
posted @ 2016-01-04 20:27  yufenghou  阅读(102)  评论(0编辑  收藏  举报