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

python进阶

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

def performance(f):
def fn(x):
print 'call '+f.__name__+'()'
print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
return f(x)
return fn
@performance
def factorial(n):
return reduce(lambda x,y: x*y, range(1, n+1))
print factorial(10)
运行成功输出错误什么鬼
任务思路:避免引用循环变量 i 所以用定义函数法、先调用法都行。
评论:闭包,就是 某个函数a的内部 函数 使用了外部变量(非全局),所以每次调用 a所生成的函数使用不同的变量,a就好像 c++的 new一样。(所以我觉着这节课的任务,容易误导大家去理解闭包的核心概念)
如果是真正的初学自学者,这个能写出来的话,我也感觉离成神不远了
python3.x中sorted()方法中,reverse = False为默认值,如果为空,则默认从小到大排序,如果需要控制顺序,则必须写“reverse=值”这种来编辑,不能省略reverse,否则报错。另外,0、False均为False结果,或者输入任意一个结果为False的布尔式,则可以从小到大排序。1、True和其他数值以及结果为True的表达式,均可以实现从大到小的排序
def get_grade(self):
if self.__score>=80:
return 'A'
if self.__score>=60:
return 'B'
else:
return 'C'
在python3.x中,返回的是一个迭代器,可以只用迭代器的方法依次取出结果
filter(function or None, iterable) --> filter object
|
| Return an iterator yielding those items of iterable for which function(item)
| is true. If function is None, return the items that are true.
reduce() 函数在 python 2 是内置函数, 从python 3 开始移到了 functools 模块
python3.x中map()生成的是一个迭代器,不能直接打印出一个列表
def __str__(self):
g=gcd(self.p,self.q)
if self.q/g==1:
return '%s' % (self.p/g) #只有一个参数也要加括号
return '%s/%s' % (self.p/g , self.q/g )
不知道什么原因,在慕课任务上按照答案输入提交完美,然后在python的shell脚本里编辑却频频报错,一模一样的内容报错,找不出原因。感觉心好累!!!
开包了就是方法,不开包就是函数
def __init__(self, num):
L = [0, 1]
i = 2
while i < 10:
L.append(L[i-2] + L[i-1])
i += 1
self.num = L
还是没明白,是不是如果循环内部想要向外部返回变量,就要使用每一次重新new出来的变量啊
码的,原来下划线得用两次才能打出__name__
没讲的东西做什么作业呢。

**kw,这个没说,kw的iteritems的方法也没讲,setattr也没讲。
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消