为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
python进阶_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • map()是python内置的高阶函数,它接收一个函数f和一个list,并通过把函数f依次作用在list的每个元素上,得到一个新的list并返回。 注:map()不改变原来的list,而是返回一个新的list。
    查看全部
  • 变量能指向函数,函数名其实就是指向函数的变量。 高阶函数:能接收函数作为参数的函数
    查看全部
  • python不是纯函数式编程,允许有变量。 函数可以作为变量传入。 支持闭包,有了闭包,就能返回函数。 有限度得支持匿名函数。
    查看全部
  • 函数式编程的特点: 1,把计算视为函数而非指令 2,纯函数编程没有变量,没有副作用,测试简单。 3,支持高阶函数,代码简洁。
    查看全部
  • 函数式编程
    查看全部
  • super(Student,self).__init__(name,gender)
    查看全部
    0 采集 收起 来源:python中 __slots__

    2016-02-28

  • 所以,带参数的log函数首先返回一个decorator函数,再让这个decorator函数接收my_func并返回新函数: def log(prefix): def log_decorator(f): def wrapper(*args, **kw): print '[%s] %s()...' % (prefix, f.__name__) return f(*args, **kw) return wrapper return log_decorator @log('DEBUG') def test(): pass print test()
    查看全部
  • 要让 @log 自适应任何参数定义的函数,可以利用Python的 *args 和 **kw,保证任意个数的参数总是能正常调用: def log(f): def fn(*args, **kw): print 'call ' + f.__name__ + '()...' return f(*args, **kw) return fn
    查看全部
  • import functools sorted_ignore_case = functools.partial(sorted,key=str.upper) print sorted_ignore_case(['bob', 'about', 'Zoo', 'Credit'])
    查看全部
    0 采集 收起 来源:python中偏函数

    2016-02-27

  • import time, functools def performance(unit): def wrapper(f): @functools.wraps(f) def func(*args,**kw): t1 = time.time() r = f(*args,**kw) t2 = time.time() t = (t2-t1)*1000 if unit == 'ms' else (t2 - t1) print 'Call %s() in %f %s'%(f__name__,t,unit) return r return func return wrapper @performance('ms') def factorial(n): return reduce(lambda x,y: x*y, range(1, n+1)) print factorial.__name__
    查看全部
  • import time def performance(f): def fn(*args,**kw): t1 = time.time() r = f(*args,**kw) t2 = time.time() print 'call %s() in %fs' %(f.__name__,(t2-t1)) return r return fn @performance def factorial(n): return reduce(lambda x,y: x*y, range(1, n+1)) print factorial(10)
    查看全部
  • print filter(lambda s:s and len(s.strip())>0, ['test', None, '', 'str', ' ', 'END'])
    查看全部
  • *arg 代表非关键字参数,用于元组;**kw代表关键字参数,用于字典
    查看全部
  • def count(): fs = [] for i in range(1, 4): 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()
    查看全部
    0 采集 收起 来源:python中闭包

    2016-02-27

  • def calc_prod(lst): def prod(): def f(x,y): return x*y return reduce(f,lst) return prod g = calc_prod([1, 2, 3, 4]) print g()
    查看全部

举报

0/150
提交
取消
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类
友情提示:

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