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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • http://www.imooc.com/qadetail/68421 http://www.imooc.com/qadetail/139291 http://www.imooc.com/qadetail/195592
    查看全部
  • http://www.imooc.com/qadetail/236175
    查看全部
  • 看下评论区
    查看全部
  • http://www.imooc.com/qadetail/194913 http://www.imooc.com/qadetail/157301
    查看全部
  • 摘自评论区 解释器内部会将**kw拆分成对应的dict. setattr()方法接受3个参数:setattr(对象,属性,属性的值) setattr(self,k,v)相当于self.k = v kw.iteritems()历遍字典kw的所有key和value,分别匹配k,v
    查看全部
  • http://www.imooc.com/qadetail/152740 摘自他人笔记: p1,p2,p3存储的是地址,即"Bart","Adam","Lisa"的地址为别对应 [<__main__.Person object at 0x1e964450>, <__main__.Person object at 0x1e97e7d0>, <__main__.Person object at 0x1e97ea10>] 因此如果直接使用sorted(L1),那么则是对地址进行大小排序,所以对各项的name的输出的结果则是"Bart","Adam","Lisa",乍看一眼会觉得代码并没有错,但是不知道结果为什么是错的,原因就在于排序的对象搞错了。 所以为了对名字大小进行排序,需要在sorted内添加内建的cmp函数,即sorted(L1,lambda x,y:cmp(x.name,y.name))
    查看全部
  • 像这种内层函数引用了外层函数的变量(参数也算变量),然后返回内层函数的情况,称为闭包(Closure)。
    查看全部
    0 采集 收起 来源:python中闭包

    2017-10-08

  • 这个函数最后返回fn,就是说这个函数的返回值最终会指向一个函数,就是这个fn。 这个fn的意思就是调用了f,并返回了f的值,这样这个函数就没有改变原有函数的功能。只是在f的前后加上了时间,这样就可以打印f调用时间日志了。
    查看全部
  • 第一行,导入模块time 第二行,定义一个叫performance的函数,接收一个参数 第三行,定义一个函数,接收任何参数 第四行,调用time模块的time方法,得到系统当前时间的时间戳 第五行,调用函数f,这个f函数就是传递给performance函数的参数,且f函数接收任何参数 第六行,再次调用time模块的time方法,获得当前时间的时间戳 第七行,打印调用的函数名,和调用函数的前后时间差(用到了字符串的占位符,可看一下python中的格式化字符串) 第八行,返回f函数的调用结果 第九行,返回新定义的函数fn 综上:函数performance接收一个函数作为参数,对这个函数进行包装,返回一个新函数
    查看全部
  • 因为 add() 函数需要传入两个参数,但是 @log 写死了只含一个参数的返回函数。 要让 @log 自适应任何参数定义的函数,可以利用Python的 *args 和 **kw,保证任意个数的参数总是能正常调用: def log(f): def fn(*args, **kw): print 'call ' + f.__name__ + '()...' return f(*args, **kw) return fn
    查看全部
  • def count(): fs = [] for i in range(1, 4): def f(j)://这里定义了一个函数,参数为j def g(): //定义了一个函数 返回结果为j * j return j*j return g //函数 f(j) 返回的是函数g r = f(i) //传入了i, 里面的g函数变成了i * i , 所以实际上 r = i * i fs.append(r) return fs f1, f2, f3 = count() print f1(), f2(), f3()
    查看全部
    0 采集 收起 来源:python中闭包

    2017-10-08

  • def 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()
    查看全部
  • map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。
    查看全部
  • sorted([36, 5, 12, 9, 21], reversed_cmp) [36, 21, 12, 9, 5]
    查看全部
  • 1.函数可以在函数内部定义也可以在函数外部定义 2.函数内部定义的函数无法被外部访问 3.闭包:内层函数引用外层函数变量 返回内层函数的情况 特点:返回的函数引用了外层函数的局部变量
    查看全部
    0 采集 收起 来源:python中闭包

    2017-10-08

举报

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

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