异常检测语句:
1. Try-except语句:try语句一旦检测到异常,那么异常下面的语句都不会再去执行:
try:
f = open('lalal.txt')
print(f.read())
f.close()
except OSError as reason:
print('文件出错了'+str(reason))
except TypeError as reason:
print('类型出错了'+str(reason))
#也可以同时捕捉多个异常:
except (OSError,TypeError):
print('wrong')
当try语句中的第一个异常触发,就会触发异常机制,下面的语句便不会再执行;同时如果有多个异常那么只会抛出第一个异常。
2.Try-finally语句:无论如何都会执行下面finally的代码:
try:
f = open('file.txt','w')
print(f.write('I am back ^_^ '))
sum = 1 +'1'
except (OSError,TypeError):
print('Is wrong')
finally:
f.close()
如上面的代码,如果没有finally则程序会在sum语句抛出异常,此时对于文件file 由于写入了内容,但是文件在关闭之前触发异常,则写入的内容保存在系统内存中,而不能写入文件。