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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • *args表示任何多个无名参数,它是一个tuple;**kwargs表示关键字参数,它是一个dict。 'call %s() in %fs' 中%后面的s()和fs分别引用后面的f.__name__和t2-t1, 常用的python字符串格式化符号: %s表示格式化字符串,%f表示格式化浮点数,%d表示格式化整数 详细介绍地址:http://www.runoob.com/python/python-strings.html
    查看全部
  • 要定义关键字参数,使用 **kw; 除了可以直接使用self.name = 'xxx'设置一个属性外,还可以通过 setattr(self, 'name', 'xxx') 设置属性。
    查看全部
  • map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。
    查看全部
  • 我觉得这个算是经典的代码
    查看全部
  • 计算函数调用的时间可以记录调用前后的当前时间戳,然后计算两个时间戳的差。 参考代码: 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)
    查看全部
  • 装饰器的作用:减少重复代码 场景: 1. 打印日志:@log 2. 检测性能:@performance 3. 数据库事务:@transaction 4. URL路由:@post('/register')
    查看全部
  • 实现引用L1(List)进行的排序: L2 = sorted(L1,key = lambda x:x.name) L2 = sorted(L1, lambda p1, p2: cmp(p1.name, p2.name))
    查看全部
  • 暂时无需安装第三方模块,mark,有需求了再看
    查看全部
  • 多种导入方式 1、import os 使用os.path.isdir...... 2、import os.path 使用os.path.isdir...... 3、from os import path 使用path.isdir...... 4、from os.path import isdir,isfile 使用isdir.....
    查看全部
  • 转自评论 def count(): fs = [] for i in range(1, 4): def f(m = i): return m * m fs.append(f) return fs f1, f2, f3 = count() print f1(), f2(), f3() 方法:问题的产生是因为函数只在执行时才去获取外层参数i,若函数定义时可以获取到i,问题便可解决。而默认参数正好可以完成定义时获取i值且运行函数时无需参数输入的功能,所以在函数f()定义中改为f(m = i),函数f返回值改为m*m即可. s.append(f),只是将每一个f()的引用保存进了list,并没有进行对于i的计算,所以导致最后在运行了f(1)之后,i已经变为了3,所以会一样结果都为9.只要将这里改为fs.append(f())即可,这样就在这一步的时候已经进行了i*i的运算,将结果保存了,通过这一题可以注意到在python这门语言之中,f与f()的大区别。
    查看全部
    0 采集 收起 来源:python中闭包

    2016-12-22

  • filter()函数是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。
    查看全部
  • key=???
    查看全部
  • import math def is_sqr(x): r = math.sqrt(x) return r%1==0 print filter(is_sqr, range(1, 101)) 这样也可
    查看全部
  • 调用 reduce(f, [1, 3, 5, 7, 9])时,reduce函数将做如下计算: 先计算头两个元素:f(1, 3),结果为4; 再把结果和第3个元素计算:f(4, 5),结果为9; 再把结果和第4个元素计算:f(9, 7),结果为16; 再把结果和第5个元素计算:f(16, 9),结果为25; 由于没有更多的元素了,计算结束,返回结果25。 上述计算实际上是对 list 的所有元素求和。虽然Python内置了求和函数sum(),但是,利用reduce()求和也很简单。
    查看全部
  • def format_name(s): return s[0].upper() + s[1:].lower() print map(format_name, ['adam', 'LISA', 'barT'])
    查看全部

举报

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

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