try:
….
….
except:
print ('出错')
try:
f = open('我为什么是个文件.txt')
print (f. read() )
f.close()
except OSError:
print ('文件出错')
找不到”” 我为什么是个文件.txt”这个文件
try:
f = open('我为什么是个文件.txt')
print (f. read() )
f.close()
except OSError as reason:
print ('文件出错\n出错的原因是:'+str(reason))
———》》》》
文件出错
出错的原因是:[Errno 2] No such file or directory: '我为什么是个文件.txt'
try:
x = 1+'1'
f = open('我为什么是个文件.txt')
print (f. read() )
f.close()
except (OSError, TypeError): # 只要育错就抱错
print ('出错')
————》》》
出错
异常处理的细分写法:
# 异常处理的细分写法: try : li = [11,22] li[0] int ('abc') except IndexError as e: # 一层比一层高的级别 print('IndexError',e) except ValueError as f: print('ValueError',f) except Exception as h: print('Exception',h) else: # 如果上边不出错,就执行这里的代码 print('else') finally: # 不管出不出错,这里都 要执行, print('......')
断言,主动触发异常
主动触发异常: try: raise Exception('主动触发异常') except Exception as e: print(e) 断言: print(123) assert 1==1 # 断言,条件成立 往下走,不成立 报错 print(456)