'''
捕捉异常我们在运行代码时经常遇到程序出错的情况,
在Python中,这些错误通常叫做异常异常最基本的术语:
try/except子句。表示可能触发异常产生的代码会放到try语句块 里,
而处理异常的代码会在except语句块里实现
'''
try:
text = input('请输入:') #容易出异常的代码 如果出现异常向下面比较,看符合哪一个异常,就输出符合的异常下面的代码
except EOFError: #读取异常ctrl+Z/crtl+d
print('读取异常')
except KeyboardInterrupt: #键盘中断 crel+c
print('键盘中断')
else: #没有异常执行else
print('您输入的是:{}'.format(text))
finally:
print('结束')
#finally里面的子句无论有没有异常都会执行
#这个特性主要用来在脚本执行之后做资源清理工作
def m2():
file = open('output2.txt','w')
try:
file.write('hello python2')
finally:
file.close()
'''#处理不同的异常种类'''
#第一种方法
#将所有可能发生的异常放到一个元组里
try:
file = open('test.txt','rd')
except (IOError,IOError) as e: #输出异常,读取异常
print("出现了一个错误:,{}".format(e))
#第二种方法
#对每一个单独的异常在单独的except语句块中处理,我们想要多少个except语句块都可以,这个是例子
try:
file = open('test.txt','rd')
except EOFError as e:
print("读取异常")
raise e
except IOError as e:
print("输出异常")
raise e
finally:
file.close()
#最后一种方式会全部捕获所有异常
try:
file = open('test.txt','rd')
except Exception: #所有异常
#打印一些异常日志,如果你想要的话
raise
#当你不知道你的程序会抛出什么的异常时,上面的方式可能会非常有帮助