关于raise

关于raise

麻烦老师详细讲解一下raise的具体用法

http://img1.sycdn.imooc.com//climg/5eb536a609c67bfa06070946.jpg

还有这里,子类里并没有输出函数,为什么下面可以自动输出呢

还有这个例题中,既然err_code和err_msg都是类属性,是不是用类方法会更简单一点呢

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕美 2020-05-09 09:29:52

同学,你好。

1、当程序出现错误,python会自动引发异常,也可以通过raise显示地引发异常。一旦执行了raise语句,后面的语句将不能执行。

2、return会将函数的结果返回,在调用时赋值给变量用于接收返回值并输出,或者在调用函数时直接使用print输出即可

3、将异常信息放在了类方法中,因此需要使用类名调用类方法才可以输出结果

http://img1.sycdn.imooc.com//climg/5eb60762094d973a03570479.jpg

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

好帮手慕美 2020-05-08 19:32:48

同学,你好。

1、raise用于抛出该异常,使用try……except……捕获异常

BadPramsException继承了ApiException类,当触发该异常时会执行ApiException类中相应的代码,会raise抛出异常信息即__str__中的内容。在打印异常信息时会输出。

http://img1.sycdn.imooc.com//climg/5eb5410309016d9a06440316.jpg

http://img1.sycdn.imooc.com//climg/5eb54126096b34a903010237.jpg

2、可以使用类方法的,可在子类中定义相同的类方法继承即可,在抛出异常时调用类方法

http://img1.sycdn.imooc.com//climg/5eb542d309c6a8b206500319.jpghttp://img1.sycdn.imooc.com//climg/5eb542f509700f1e03590198.jpg

http://img1.sycdn.imooc.com//climg/5eb5434f090619db03370271.jpg

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

  • 老师,这个抛出异常该怎么理解呢?这个raise和return有什么区别呢 还有我用了您给的这个类方法,但是BadPramsException的e不能输出,请问是什么情况呢
    2020-05-08 19:44:04
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师