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

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下载
官方微信
友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消