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

python进阶

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

已采纳回答 / 子羽0
g返回的是函数的引用,实际并没有计算,而是在print的时候才去计算结果,如果你改成g(),实际返回的就是计算的结果,将结果放的fs中,count函数返回的也是三个结果,二不是三个函数,所以应该讲print f1(),f2(),f3()改成print f1,f2,f3。这一章侧重点应该在append这个函数上,入参如果为一个函数的引用返回的也是函数的引用,实际只在print函数的时候计算结果

已采纳回答 / 松鼠鼠
r'["Tim", "Bob", "Alice"]' 是一个字符串,File-like-Object 是一个类似File类的类比如:class File-like-Object(object):    def read(self):        return r'["Tim", "Bob", "Alice"]'这个类写完了,它有一个read()方法,这跟File类类似,但实际这个类的作用就是通过调用read()方法返回了一个字符串

已采纳回答 / 心随风3708948
<...code...><...code...>这是一段代码和运行结果,可以看见,在decorator函数的命名空间里面,压根就不存在add函数,而是fun函数。

已采纳回答 / 甲壳虫爱上了夏天
print float(Rational(7,2))调用的是  Rational类中的  私有方法  float如果改成print int(Rational(7,2))  那就是返回整数3了

已采纳回答 / Arsener
这是算“算术平方根”的,括号里只有一个参数,math.sqrt(25)==5

已采纳回答 / zhangsunny3313760
Anaconda,python xy,pycharm,甚至是eclipse都是很不错的IDE个人比较喜欢Anaconda里的spyder,可以交互式编程,像matlab一样,用来做科学计算比较方便

已采纳回答 / HIGHKICK_Go3789956
当只调用模块中某个函数时,调用的时候我们只需要写函数名就可以,上一节讲到的。<...code...>

已采纳回答 / z3phyr
这个是递归啊,具体的算法你去看一下那个求最大公约数的算法 “辗转相除法”

已采纳回答 / Yi罐可乐
lambda 是一个匿名函数,self.get_grade = lambda: 'A'  这句代码等于def xxx:    return 'A'self.get_grade = xxx

已采纳回答 / reborn3788166
课程里面已经说得很清楚了:先定义一个函数def log(f):    def fn(x):        print 'call ' + f.__name__ + '()...'        return f(x)    return fn其次@logdef factorial(n):    return reduce(lambda x,y: x*y, range(1, n+1))print factorial(10)输出结果:call factorial()...3628800

已采纳回答 / qq_许寻风_03726049
f 是代表这个函数的函数名。f(x,y)是定义这个函数有2个参数。 后面因为    return lazy_prod  f = calc_prod([1, 2, 3, 4]),注意看  f 这个函数已经等于calc_prod([1, 2, 3, 4])。所以f变成了不用参数的函数。  f()就是调用函数的意思print f()  代表输出  调用完这个函数后  return的结果

已采纳回答 / qq_魅_4
lambda 表明是匿名函数,lambda x,y: x*y 这段代码就相当于<...code...>只不过省略了 f 这个函数名,所以叫匿名函数

已采纳回答 / Nelson_Zhao
在文本编辑器里写代码的话,有两种方法。一种是time.clock(),一种是time.time()<...code...>#用time.time()也一样如果你用过ipython编辑器做过数据分析的话,也可以在ipython环境下执行命令:<...code...>来获取执行时间

已采纳回答 / 慕瓜5474458
这代码是__len__这节的, def __str__(self):        return str(self.numbers)意思应该把它变成字符串,但是这节标准答案没加str也行,加了也没错。所以我猜测这是Python的Bug,所以在3.4版本改正了。纯属猜测,我也是刚学到这一节。实际去验证吧class Fib(object):    def __init__(self, num):        a, b, L = 0, 1, []        for n in range(num):    ...

已采纳回答 / welwel
s.strip()就是删除字符串s前后的空格,len(s.strip)就是返回s中除去前后空格后的长度strip()中间为空时表示除去前后空格,不为空时eg:strip(rm),表示返回移除字符串头尾指定的字符rm后生成的新字符串
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消