1 #异常捕获---指定异常类型 2 try: 3 #尝试 4 fi=open(r'D:Users4399-3046Desktop est.txt',mode='wb'); 5 fi.write('写入文字'); 6 #若发生异常,且异常错误类型=IOERROR,则打印出错误内容(比如把后面的mode='W',去掉,就会捕获这个异常) 7 except IOError:----->这就是指定的异常 8 print('此处捕获了IOERROR'); 9 #否则(相当于没有捕获到异常),则正常运行try里的语句,若运行成功,打印出【写入成功】 10 else: 11 print('未发生异常,写入成功');
1 #异常捕获---不指定异常类型 2 try: 3 #尝试 4 fi=open(r'D:Users4399-3046Desktop est.txt',mode='wb'); 5 fi.write('写入文字'); 6 #若发生异常,且异常错误类型=IOERROR,则打印出错误内容(比如把后面的mode='W',去掉,就会捕获这个异常) 7 except Except as e :------------->这里没有指定异常,所有异常(ERROR)都会抛出 8 print('此处捕获了异常',e); 9 #否则(相当于没有捕获到异常),则正常运行try里的语句,若运行成功,打印出【写入成功】 10 else: 11 print('未发生异常,写入成功');
==============总结1====================
1 try: 2 print('执行可能出错的代码'); 3 except Exception as e:----------->因为不确定会捕获到什么异常,因此使用所有异常的基类 4 print('处理异常的操作'); 5 else: 6 print('这里是当没有异常的操作'); 7 finally: 8 print('这里是即使发生异常也会执行的地方');
例子:
1 try: 2 s=input('请输入要输入的字符:'); 3 i=int(s); 4 except Exception as e: 5 print(e);------->typeError 6 else: 7 print(i); 8 finally: 9 print('你输入的东西有误哦');
==============总结2--自定义异常--raise====================
之前的异常捕获,可以说是程序自己触发
①而raise不同,有了它,我们可以自己触发异常
②触发raise异常后,后面的代码将不再运行
③当程序出现错误,python会自动引发异常错误,也可以通过raise显式地引发异常
一旦执行了raise语句,raise后面的语句将不能执行。
===========对代码的异常捕获是必要的,主要还是视情况而定===
1、对于