不太懂return cls

不太懂return cls

我看了一个回答说作用是将传入的class Cat返回,但是为什么要返回呢?以前的课里说过之所以加return是因为被修饰函数里没有print语句,但是在这节课中的修饰函数里就可以执行print语句,希望老师能讲一下return cls 的具体意义

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

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

1回答
好帮手慕美 2019-09-01 13:56:48

同学,你好。

1、并不是说函数中没有print语句才要添加return,而是需要将值返回时添加return语句,要看是将值返回还是将值进行打印来选择是用print还是return

2、return cls:在创建实例时,会先执行@eat装饰器,cls为Cat类,cls.eat是给Cat类动态添加eat方法,再执行return cls进行返回,即将添加完eat方法的Cat类返回

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

  • cls.eat = lambda self: print('{0}:我要吃东西'.format(self.name)) cls.eat是给Cat类动态添加eat方法,这里仅仅是在添加一个方法啊,为什么在添加方法时,顺带着连print也执行了,打印出来这句话?
    2019-10-20 16:56:33
  • 同学,你好。添加方法的时候是没有执行print语句的,而是在后边使用cat.eat()调用了该方法,因此会执行print语句进行输出。祝学习愉快~~~~
    2019-10-21 10:15:58
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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