为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰

已采纳回答 / 慕粉3435931
可以继承父类方法,1238是作为参数传给父类__init__(self,'1238'),所以打印出来1238.把super(stu,self).__init__(id) 中的id改为name
def calc_prod(lst):
def lazy_prod():
def f(x,y):
return x*y
return reduce(f,lst)
return lazy_prod

f = calc_prod([1, 2, 3, 4])
print f()

最新回答 / 翼曦
什么作业框 哪个不能输入
终于搞定基础了,现在准备来升级了

已采纳回答 / focuspe
f返回的是一个函数,f()是返回函数的值<...code...><...code...>
def f(x, y):
return x * y
print reduce(f, [2, 4, 5, 7, 12])
使用super()的漂亮之处在于,你不需要明确给出任何基类名字,这意味着如果你改变了类继承关系,你只需要改一行代码(class语句本身)而不必在大量代码中去查找所有被修改的那个类的名字。
------《Python核心编程》P358
除了可以直接使用self.name = &#039;xxx&#039;设置一个属性外,还可以通过 setattr(self, &#039;name&#039;, &#039;xxx&#039;) 设置属性。
future的前后是分别两个下划线。。。
@黎俊锋 ,狗熊猫解释得很好,越是往后课程的说明越渣
def add(x,y,f):
return f(x,0.5)+f(y,0.5)
print add(25,9,pow)
除了类方法classmethod,还有静态方法staticmethod同样是使用@staticmethod表示

最新回答 / 流逝纯眸
f1是函数的引用,不是结果,当然不可以了

已采纳回答 / 华科Angus3687695
传入的函数是f,在高阶函数中,f的参数默认用x表示,也就是说,只要f参数只有一个,传进来后,f本身参数名就被x覆盖,而且返回的函数中仍然使用x表示f的参数。所以,当f原有参数名不是x时,自然改变了 参数名

已采纳回答 / 刚子曰
文档字符串。注意,是 __doc__ ,前后各两个下划线。一般而言,是对函数/方法/模块所实现功能的简单描述。但当指向具体对象时,会显示此对象从属的类型的构造函数的文档字符串。(示例见以下 a.__doc__)>>> str.__doc__"str(string[, encoding[, errors]]) -> str\n\nCreate a new string object from the given encoded string.\nencoding defaults t...
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消