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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • f1.__name__ 此函数储存的是函数本身的名字 即f1
    查看全部
  • 匿名函数lambda //快速定义一个函数 f=lambda x,y:x+y f(1,4) >>5 def action(x): return lambda y:x+y a=action(2) >>2 //a是action的返回值 a(22) >>24 //a(22)调用了lambda的表达式作为返回值
    查看全部
  • 变量可以指向函数,变量又可以作为参数传入函数。so函数能作为参数传入另一个函数做参数。
    查看全部
  • map有映射的意思
    查看全部
  • print p.__score #在Python3.5中不能被访问
    查看全部
  • def calc_prod(lst): def f1(): def f2(x,y): return x*y return reduce(f2,lst) return f1 f = calc_prod([1, 2, 3, 4]) print f()
    查看全部
  • filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。 滤波函数
    查看全部
  • 汉字#
    查看全部
  • 不能直接写sqrt,前面要加上math.
    查看全部
  • 将i的值赋给另外一个变量,当i进行变化后,再进行调用就不会变了???
    查看全部
    0 采集 收起 来源:python中闭包

    2016-10-01

  • def __init__(self,name,gender,birth,job): pass
    查看全部
  • L2=sorted(L1.name)?
    查看全部
  • 理解一下: 1.装饰器的固定编写格式:第一部分写装饰器函数,函数增添的内容以及调用的原函数(参数);第二部分写定义装饰器,编写上面调用的原函数运算规则; 2.装饰器添加参数: 由上知道,f1=new_fn(f1),即新函数f1(10)=new_fn(f1)(10); 而在本节,my_func = log('DEBUG')(my_func)显然是错误的,可以运行一下代码: factorial(10)=performance(factorial)(10),即是等价的 但是factorial(10)!=performance('ms')(10),即出现错误 因此上述my_func可以近似理解为my_func=log('DEBUG',my_func) 3.装饰器参数: 在最内层定义装饰器参数; 在最外层更改装饰器参数值;
    查看全部
  • import time #调用函数参数 def performance(f): #定义装饰器函数 def fn(*args,**kw): #定义接收任何参数的子函数 t1=time.time() #获取当前电脑时间 r=f(*args,**kw) #传入并运行factorial()函数 t2=time.time() #获取当前电脑时间 print 'call %s() in %fs' % (f.__name__,(t2-t1)) #%s表示该位置应填入字符串,%f表示该位置应填入浮点型数字(即包含小数尾数的数字),()和s没任何意义(还是()和s),(f.__name__,(t2-t1))以元组形式表示需要填入的字符串(本处f.__name__=factorial)和浮点型数字 return r #返回执行factorial()函数后的值 return fn #返回子函数fn @performance #定义装饰器 def factorial(n): #定义原函数factorial() return reduce(lambda x,y: x*y, range(1, n+1)) #以匿名函数定义原函数运算规则和返回值 print factorial(10) #此时的factorial经过装饰器@performance包装,已经是performance(factorial),该命令等价于 print performance(factorial)(10) #输出fn()运算结果:1、给出装饰器添加的部分:call factorial() in 0.0000s;2、给出原函数factorial(10)元算结果,3628800
    查看全部
  • python 格式化字符 %s 字符串 %f 浮点数字 %d 有符号整数 ('%5.3d' % 3) 要让 @log 自适应任何参数定义的函数,可以利用Python的 *args 和 **kw,保证任意个数的参数总是能正常调用: def log(f): def fn(*args, **kw): print 'call ' + f.__name__ + '()...' return f(*args, **kw) return fn
    查看全部

举报

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

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