python零基础学习2-函数1-装饰器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python零基础学习2-函数1-装饰器相关的知识,希望对你有一定的参考价值。

匿名函数:

calc=lambda x:x*3
print(calc(3))      #返回9

 

高阶函数:

  • 可以把一个函数名当做实参传给另一个函数
  • 返回值中可以包含函数名

 

装饰器:

本质是函数, 功能是为其他函数添加附加功能

  • 不能修改被装饰函数的源代码
  • 不能修改被装饰憾事的调用方式

简单装饰器示例-统计函数的运行时间:

import time

def timmer(func):
    def wrapper(*args,**kwargs):
        start_time=time.time()
        func()
        stop_time=time.time()
        print("run time:",stop_time-start_time)
    return wrapper

@timmer
def test():
    time.sleep(3)
    print("i am in test")

test()

执行结果:

i am in test
run time: 3.0001983642578125

 


以上是关于python零基础学习2-函数1-装饰器的主要内容,如果未能解决你的问题,请参考以下文章

从零开始的Python学习Episode 11——装饰器

Python面向对象学习之八,装饰器

《Python学习之路 -- Python基础之装饰器》

python之循序渐进学习装饰器

python基础-装饰器

Python基础 | 深浅拷贝生成器迭代器以及装饰器详解