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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
def performance(unit):
def per_decorator(f):
def fn(*args, **kw):
st = time.time()
f(*args, **kw)
et = time.time()
if unit == 's':
print 'call %s() in %s' %(f.__name__,et-st)
else:
print 'call %s() in %s' %(f.__name__,(et-st)*1000)
return f(*args, **kw)
return fn
return per_decorator
def performance(f):
def fn(*args, **kw):
st = time.time()
f(*args, **kw)
et = time.time()
print 'call %s() in %s' %(f.__name__,et-st)
return f(*args, **kw)
return fn
__init__一直不知道它有啥用
被装饰器整糊涂了
return reduce(f, lst, 1)如果写成 return reduce(f, lst,),就是默认lst的第一位数值作为初始值计算吧
ef calc_prod(lst):
def lazy_prod():
def f(x, y):
return x * y
return reduce(f, lst, 1)
return lazy_prod
f = calc_prod([1, 2, 3, 4])
print f()
其中的 return reduce(f, lst, 1)里面的1,是指把初始值设置为1
class Person(object):
def __init__(self, name, score):
self.name=name
self.__score=score

p = Person('Bob', 59)

print p.name
print p.__score
sorted_ignore_case = functools.partial(sorted,key=lambda x:x.lower())
def cmp_ignore_case(s1, s2):
return (-1 if s1.upper() < s2.upper() else 1)

print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)
def count():#定义函数名
fs = []#定义函数体
for i in range(1, 4):#打印序列,for i in range(x,y,z)x是开始值,y结束值,z是步长,默认为1
def f(j):
def g():
return j*j#结束函数
return g
r = f(i)
fs.append(r)#保存
return fs
f1, f2, f3 = count()
print f1(), f2(), f3()
def format_name(s):
return s.lower() and s.capitalize()

print map(format_name, ['adam', 'LISA', 'barT'])
谢谢老师,谢谢与我一起交流的猿友们
class Person(object):
def __init__(self,name,gender,birth,**kwargs):
self.name=name
self.gender=gender
self.birth=birth
for key,value in kwargs.items():
setattr(self,key,value)
重点:kwargs.items()、 setattr函数
写成啦math.sqrt(),又转眼看啦一下add函数,才发现,add(x,y,f)里面的f是指函数名,不需要写()
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消