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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • reversed_cmp的工作原理是什么?
    查看全部
  • def count(): fs = [] for i in range(1, 4): def f(i): def g(): return i*i return g fs.append(f(i)) return fs f1, f2, f3 = count() print f1(), f2(), f3() 其中def f(i): def g(): return i*i return g 这个函数f形式能避免引用循环变量i
    查看全部
    0 采集 收起 来源:python中闭包

    2018-02-22

  • def f(i),在count函数的循环内部,如果借助f函数,就可以避免引用循环变量i。
    查看全部
    0 采集 收起 来源:python中闭包

    2018-02-22

  • 像这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。 闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。
    查看全部
    0 采集 收起 来源:python中闭包

    2018-02-22

  • python:任何对象,只要有read()方法,就称为File-like Object,都可以传给json.load()
    查看全部
    0 采集 收起 来源:python中多态

    2018-02-22

  • reduce()函数即为化简函数,它的执行过程为:每一次迭代,都将上一次的迭代结果(注:第一次为init元素,如果没有指定init则为seq的第一个元素)与下一个元素一同传入二元func函数中去执行。
    查看全部
  • 这种行为称为多态。也就是说,方法调用将作用在 x 的实际类型上。s 是Student类型,它实际上拥有自己的 whoAmI()方法以及从 Person继承的 whoAmI方法,但调用 s.whoAmI()总是先查找它自身的定义,如果没有定义,则顺着继承链向上查找,直到在某个父类中找到为止。
    查看全部
    0 采集 收起 来源:python中多态

    2018-02-22

  • lambda x,y:x*y 即为定义的一个函数,函数体的内容为x*y
    查看全部
  • 'call %s() in %fs' %(f.__name__,(t2-t1)) %s 和 %f 是占位符,输出时分别替换为 f.__name__ 和 (t2-t1)
    查看全部
  • @log 写死了只含一个参数的返回函数。 要让 @log 自适应任何参数定义的函数,可以利用Python的 *args 和 **kw,保证任意个数的参数总是能正常调用: 备注:*args表示任何多个无名参数,它是一个tuple;**kwargs表示关键字参数,它是一个dict。并且同时使用*args和**kwargs时,必须*args参数列要在**kwargs前 def log(f): def fn(*args, **kw): print 'call ' + f.__name__ + '()...' return f(*args, **kw) return fn
    查看全部
  • 例如,定义一个函数 f(),我们让它返回一个函数 g,可以这样写: def f(): print 'call f()...' # 定义函数g: def g(): print 'call g()...' # 返回函数g: return g 仔细观察上面的函数定义,我们在函数 f 内部又定义了一个函数 g。由于函数 g 也是一个对象,函数名 g 就是指向函数 g 的变量,所以,最外层函数 f 可以返回变量 g,也就是函数 g 本身。 调用函数 f,我们会得到 f 返回的一个函数: >>> x = f() # 调用f() call f()... >>> x # 变量x是f()返回的函数: <function g at 0x1037bf320> >>> x() # x指向函数,因此可以调用 call g()... # 调用x()就是执行g()函数定义的代码 请注意区分返回函数和返回值: def myabs(): return abs # 返回函数 def myabs2(x): return abs(x) # 返回函数调用的结果,返回值是一个数值
    查看全部
  • _name_ 是函数的一个属性,取到函数名
    查看全部
  • pyton内置的装饰器 打印日志:@log 检测性能:@perforance 数据库事务:@transaction url路由:@post('/register')
    查看全部
  • Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True; 在代码lambda s:s and len(s.strip())>0中,None被识别为false,所以被删除了;
    查看全部
  • calc_prod返回了一个不带参数的函数lazy_prod(), lazy_prod()这个函数返回了一个经过reduce()计算后的结果,就是最终计算出来的值。 f = calc_prod([1, 2, 3, 4])的执行结果是函数lazy_prod的引用,也就是所f就是calc_prod的返回值,是一个函数。 最后f()才真正调用了上一步返回的函数,执行了reduce并返回最后的结果。 这里其实用到的就是闭包,函数内部的函数可以访问外部函数的局部变量,包括参数。 并且返回一个新的函数。
    查看全部

举报

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

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