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

python进阶

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

最赞回答 / 慕码人1183263
sorted函数有四个参数,sorted(iterable, cmp=None, key=None, reverse=False)可以看到其中第一个参数是可迭代对象,后面的参数都是具有默认值的,重点阐述如下:1、cmp,比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回02、key,主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序3、reverse,是否反转,默认...

最新回答 / Cherry666
@log等价于 f=log(f)#这里调用装饰器@语法就是为了简化装饰器的调用~

最新回答 / 学嗨玩嗨
可能初始化的时候没有加参数,贴代码才能看到什么原因

最赞回答 / geek_kys
因为g没有直接引用循环变量i

最新回答 / Cherry666
比如函数f为sum()函数f.__name__ 得到的就是sum

最赞回答 / qq_苏格拉没有底_14
这里你是吧filter的用法没搞清楚。filter return的是要留下的元素所满足的条件,不能用if来表达。就像return男人,就把list中的男人元素留下了,不能写成 if 男人。

最新回答 / 慕慕9426646
 我来说一下我的理解,从代码的6行,fs.append(f),这个f是一个变量名,也就是一个指针,而函数的指针是从函数创建开始就不会变的,当第一次循环,fs.append(1),添加到list里面的数值是1,当第二次,第三次调用的时候,fs.append(f)会将前几次的值全部覆盖,因为添加的是一个指针,这个函数指针又开始访问函数,所以返回的都是9 ,以上仅仅是我个人见解,多多讨论

最新回答 / 慕哥2587987
因为f()表示运行f这个函数,而在你的代码中f不是一个函数,只是一个普通变量,所以f()自然就不对,而该变量接受了calc_prod([1, 2, 3, 4])的值,所以print f输出的实际上就是calc_prod([1, 2, 3, 4])的运行结果

最新回答 / 小同不一
语法不应该这么写 吧  应该先进行IF判断再进行返回吧。 if type(math.sqrt(x)) == type(1):      return x再一个  你这个会得到一个空列表,因为 及时能被开方  得到的结果 也是float类型的

最新回答 / WhiteGourd
不写变量X就是没有参数的函数。

最赞回答 / 催什么催
目前来说暂时没发现哪里有趣~~~~~

最赞回答 / 慕雪松
你需要全宇宙统一理论:一切皆对象,对象皆数据类型,数据类型都可以返回出来。
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

微信客服

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

帮助反馈 APP下载

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

公众号

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

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消