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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 2-8返回函数 lambda函数:<br><br> g = lambda x:x+1<br><br> 可以这样认为,lambda作为一个表达式,定义了一个匿名函数,上例的代码x为入口参数,x+1为函数体,用函数来表示为:<br><br> def g(x):<br><br> return x+1<br><br> <br><br> <br><br> reduce函数<br><br> reduce函数,reduce函数会对参数序列中元素进行累积。<br><br> reduce函数的定义:<br><br> reduce(function, sequence[, initial]) -> value<br><br> function参数是一个有两个参数的函数,reduce依次从sequence中取一个元素,和上一次调用function的结果做参数再次调用function。<br><br> 第一次调用function时,如果提供initial参数,会以sequence中的第一个元素和initial作为参数调用function,否则会以序列sequence中的前两个元素做参数调用function。<br><br> reduce(lambda x, y: x + y, [2, 3, 4, 5, 6], 1)<br><br> 结果为21( (((((1+2)+3)+4)+5)+6) )<br><br> reduce(lambda x, y: x + y, [2, 3, 4, 5, 6])<br><br> 结果为20
    查看全部
  • iteritems() 只能这样用 kw.iteritems 不能这样用 iteritems(kw)
    查看全部
  • 在打开文件的时候open(r'c:\....') 加r和不加''r是有区别的 'r'是防止字符转义的 如果路径中出现'\t'的话 不加r的话\t就会被转义 而加了'r'之后'\t'就能保留原有的样子 在字符串赋值的时候 前面加'r'可以防止字符串在时候的时候不被转义 原理是在转义字符前加'\'
    查看全部
    0 采集 收起 来源:python中多态

    2016-08-04

  • 这里的self.p //self.q是什么意思 下面的(self.p)/self.q又是什么意思?
    查看全部
  • 最后一步可以直接调用cmp方法,被自己的无知深深刺痛
    查看全部
    0 采集 收起 来源:python中 __cmp__

    2016-08-03

  • def calc_prod(lst): def lazy_prod(): prod = 1 for num in lst: prod = prod*num return prod return lazy_prod f = calc_prod([1, 2, 3, 4]) print f()
    查看全部
  • 变量可以指向函数
    查看全部
  • import math def is_sqr(x): if math.sqrt(x) %1 ==0: return x print filter(is_sqr, range(1, 101))
    查看全部
  • 计算函数调用的时间可以记录调用前后的当前时间戳,然后计算两个时间戳的差。 参考代码: 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)
    查看全部
  • 因为 add() 函数需要传入两个参数,但是 @log 写死了只含一个参数的返回函数。 要让 @log 自适应任何参数定义的函数,可以利用Python的 *args 和 **kw,保证任意个数的参数总是能正常调用: def log(f): def fn(*args, **kw): print 'call ' + f.__name__ + '()...' return f(*args, **kw) return fn 现在,对于任意函数,@log 都能正常工作。
    查看全部
  • 装饰器的作用
    查看全部
  • 拿到一个变量,除了用 isinstance() 判断它是否是某种类型的实例外,还有没有别的方法获取到更多的信息呢? 1. Type() 2. dir()
    查看全部
  • 考察下面的函数 f: def f(j): def g(): return j*j return g 它可以正确地返回一个闭包g,g所引用的变量j不是循环变量,因此将正常执行。 在count函数的循环内部,如果借助f函数,就可以避免引用循环变量i。
    查看全部
    0 采集 收起 来源:python中闭包

    2016-08-03

  • get_name(self) 用来提取已经拒绝外部提取的属性__self.name
    查看全部
  • Python中的reduce(func,list,initial),其中initial表示累计初始值,是可选参数,如果省略,则系统默认为list[0],我记得这个一节课程中的f函数是计算两个数乘积的,所以initial=1表示list中的所有数从乘1开始,如果是2的话就从乘2开始,你可以自己改变下参数试试
    查看全部

举报

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

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