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

python进阶

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

最赞回答 / 为何_
cmp就是sorted函数内置的参数名,就像int()里面的base=10  int(欲转换参数,base=10),但是cmp接受的参数是一个函数对象,所以写个lambda.个人愚见

最新回答 / 慕姐6371821
def new_fn(f):
   def fn(x):
      print('call'+f.__name__+'()')
      return f(x)
   return fn
new_fn(abs)(1)
试试应该是abs(1)直接就是一个值,那么new_fn就当于你写的new_fn(1)此时由于fn未接收参数,对于fn内部的两句话完全没有执行,return fn直接返回fn所在的位置

最新回答 / 大气如宏
及格和不及格都是B?不及格应该是C吧!

最新回答 / carryLess
没哪里不对import osprint os.path.isdir(r'C:\Windows')print os.path.isfile(r'C:\Windows\notepad.exe')这一段拿到自己的电脑上去试

最赞回答 / wo蜗牛niu
斐波那契数列定义:a1=0,a2=1.........an=a(n-1)+a(n-2)def __init__(self, num):   # num为数列长度        a, b, L = 0, 1, []  #给a赋初值0,b赋初值1,L创建一个空list 。        for n in range(num):    #循环依次生成数列数值            L.append(a)   #把生成的数值添加到列表末尾            a, b = b, a + b   #将a赋值为b,...

最赞回答 / 慕少1263319
r1 + r21/2 + 1/4self.p * r.q + self.q * r.p, self.q * r.q分子1 * 分母2 + 分母1 * 分子2, 分母1 * 分母21/2 + 1/4 = (1*2 + 1*4) / (2*4)

最新回答 / 慕数据3350164
分数是从高到低,也就是从大到小,而cmp排序是从小到大.

最新回答 / 为何_
不要纠结,这就是格式化输出的语法,代表%后面是参数,多参数记得加括号,要是个元组

最赞回答 / 为何_
导入time 模块 然后开始定义我们的闭包函数,我之前不知道高阶函数,都叫闭包,这只是个名字不要纠结首先闭包至少两层函数嵌套,这没问题那就定义一个performance函数,接下来返回值要是一个函数,那就写好return 一个函数,在开始定义里面函数这一层内层函数一定要执行想要装饰的函数本身,否则就不叫装饰器了,而传进来的函数就是performance的参数f,即f 就是@performance这句代码下面的函数 factorial,至于为什么是这个函数,那就是@语法的内部操作了.不用太纠结所以在perf...

最新回答 / 为何_
没什么关系只是写个函数内用,重点在于理解装饰器,这里直接写pass都行

最赞回答 / qq_慕运维7244209
说说我的理解:原来因为延时调用导致i直接变成3,现在在for循环中新定义一个可以传入变量的函数,然后里面再套上计算这个变量平方的函数,这样一来变量就被保存下来了

最赞回答 / sheeeeeeep
个人拙见:log_decorator(f) 这个是装饰器,它为了装饰 f 而存在,所以他有参数 f ,而在它内部有fn这个闭包,这个闭包是为了 传 f 的参数设置的,所以它的参数为 *args, **kw,在它内部,除了r = f(*args, **kw), 其他都是装饰,在装饰完以后,必然要返回所装饰的函数 f 即 return r.  顺着这个意义,外层自然要返回 fn,这里的fn就是r,顺着内层一层层返回,到这里,普通的无参装饰器就完事了,但这里装饰器也有参数,所以再套一层performance(u...

最新回答 / m_ethod
用def是在类里边定义类的方法,而用def__init__是在类里边定义类的属性。用def定义的类方法用实例名.方法名(x)的形式调用,而用def__init定义的类属性用实例名.属性名=x调用。如果我想用调用类属性的形式调用类方法呢?那就加个@property就可以了。实际上@property就是把类方法变成了一个类属性。

最赞回答 / 启林
意思是:count()函数被调用后,返回3个值(这3个值其实组成了一个tuple)由于tuple是有序的,tuple中的3个值分别赋值给 f1, f2, f3即:tuple = count()f1 = tuple[0]f2 = tuple[1]f3 = tuple[2]
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消