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

python进阶

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

已采纳回答 / zhu_jun
因为__str__方法需要返回字符串

已采纳回答 / 慕慕8321286
self.key的时候,key就不是指的for循环里面的key了, 而是self的一个属性,不信你可以试试将最后的输出xiaoming.job换成xiaoming.key  就会发现输出的值为Student

已采纳回答 / qq_龙_18
这个不能那样计算的,你可以单独试试看 print(isinstance(math.sqrt(4),int)),这个的结果也是错的,因为math.sqrt()出来的是flout 所以不是int

已采纳回答 / 知多少2017
calc_prod([1, 2, 3, 4] 的返回值类似函数的引用,不是函数值,需要后面加上()才能得到最后结果,其实你可以print calc_prod([1, 2, 3, 4])()试试。另外里层函数外面是调用不到的,不存在混淆。

已采纳回答 / 慕姐2893314
[range(1,101)],这里是不是不需要方括号?因为range(1,101)本身就是一个整数列表

已采纳回答 / 裴翔
<...code...>去掉内部函数的参数就好了。因为内外部函数重名,然后不能正确识别变量。

已采纳回答 / 重舟
Python3不再支持iteritems,要使用kw.items()&s P&rso&(ob class Person(object): def __init__(self, name, gender, birth, **kw): self.name = name self.gender = gender self.birth = birth for k, v in kw.items(): setattr(self, k, v) &min& = &ers xi...

已采纳回答 / 慕前端3429475
如果被装饰器封装之后,f变量指向的函数已经不是函数f了(2-11有讲),而是装饰器函数,所以直接用f.__name__打出来也不是f了,这一节有例子的。如果想打印出f,就需要对f变量的属性重新赋值,这也就是functools的作用@new_fndef f1(x):    return x*2相当于def f1(x):    return x*2f1 = new_fn(f1)我记得有一句,f1的原始定义函数被完全隐藏了所以想要保留之前的属性的话就要在被替代前重新赋值给新的函数

已采纳回答 / 慕虎020779
for n in range(num) 这样理解吧是指 这个for循环迭代了range(num)次。 10就是对应参数num 

已采纳回答 / Nero0913
在python3中,map() 生成的是迭代器不是list, 你可以在map前加上list,即list(map())

已采纳回答 / 慕丝5066221
再定义类的时候就执行了print,如果你把最后一个也屏蔽#s = BStudent(),也会把上边的定义类时的print执行掉。最后一行s = BStudent(),只是赋值行为,不会执行类,所以不会执行print

已采纳回答 / 慕哥5335383
print reduce(prod,[2,5,7,12])应该跳出程序后,再执行,既回车跳出程序,在标识符后输入print reduce(prod,[2,5,7,12])<...图片...>

已采纳回答 / 慕粉3506927
Python代码是可以执行的代码,而伪代码主要是为了理清思路或者方法方式等,可以看做是草稿,但基本逻辑都在的代码

已采纳回答 / Nameless13
__str__()用于显示给用户,而__repr__()用于显示给开发人员。如果在交互式命令行下 直接敲变量 s 就会返回<main.Person object at XXX> 这样的东西如果你配置了__repr__ = __str__你交互式命令行下打print s 和 直接敲变量 s 的返回值是一样的 都是(Student: Bob,male,88)

最赞回答 / 慕姐1978998
import functools sorted_ignore_case = functools.partial(sorted,cmp=lambda w1, w2: -cmp(w1.upper(),w2.upper())) print sorted_ignore_case(['bob', 'about', 'Zoo', 'Credit'])试试这个,完美执行
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消