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

python进阶

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

已采纳回答 / 正_0001
你去看看sorted()函数就明白了。 (进入python命令后,输:help(sorted))例:list = [x,y,z]sorted(list) 中的默认排序函数根据:list中数值类型自带的cmp()返回的值。而sorted默认排序是从从小到大。cmp(x,y)若返回-1,sorted就认为x<y,将x排在y之前。同理,cmp(x,y) 若返回0,则认为x==y, 若返回1 ,则认为 x>y,将y排在x之后。最终sorted根据cmp 将list排序好。而本题相反,高分排在前面,所以...

最赞回答 / JS000
简单点说就是当一个函数(如def my_func():    pass)前面加了@函数名(如@log),然后log函数就被赋值给my_func函数本身,并且my_func作为参数传入log函数,也就是my_func = log(my_func)。然后用前面高阶函数的知识去理解就行了。有参数装饰器就是多了一个函数而已,层层剖析下就行了

已采纳回答 / HrOice
count()函数是返回fs这个list,这个list中的元素是函数而不是数字,就像[f(),f(),f()],f1,f2,f3=count()  就是f1,f2,f3=[f(),f(),f()]   当然这个f()是count里面的,第一个f()赋给了f1,第二个f()赋给了f2,...这样赋值方法高级序列赋值语句模式虽然可以在“=”符号两侧混合匹配序列类型,但是右边元素的数目还是要跟左边变量的数目相同,不然会产生错误。那么我们回到f()  依然是返回的i*i,但是在循环结束之后i的值是3,这是确定的,...

最赞回答 / 痕六
<...code...>参数是一个对象,一个字符串和一个任意值。字符串可能会列出一个现有的属性或一个新的属性。这个函数将值赋给属性的。并将属性提供给对象。在  xiaoming = Person('Xiao Ming', 'Male',...

最赞回答 / JS000
可以的,但是前面代码要改一下:def count():    fs = []    for i in range(1, 4):        def f(j):            return j*j        r = f(i)        fs.append(r)    return fs这样最后你输入print f1,结果就是[1,4,9]用f1,f2,f3= count()是因为用了闭包,f1(),f2(),f3()其实就是分别当j为1,2,3时的g()

最新回答 / JS000
f1,f2, f3其实就是个变量名字,你用fa,fb,fc代替答案还是1*1,2*2,3*3,并没有必然联系

最赞回答 / JS000
你定义的log是接受函数的,但是你又让它接收'DEBUG'这种字符串,是要怎样啊!

最赞回答 / DanDanHang
<...code...>在终端自己试一下,就可以回答你的疑问,cmp(x,y)的确是内置函数builtin里头的,x,y可以是字符串和整数
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消