python高阶函数

#高阶函数定义:
#1.函数接受的一个参数是一个函数名
#2.函数的返回值是一个函数名
#3.满足上述条件任意一个,都可以称为高阶函数
#装饰器:本质就是函数,功能是为其他函数添加附加功能
#原则:1.不修改被装饰函数的源代码 2.不修改被修饰函数的调用方式
#装饰器=高阶函数+函数嵌套+闭包

import time # def test(func): # print(func) # start=time.time() # func() # end=time.time() # print("运行时间%s"%(end-start)) # # def foo(): # time.sleep(2) # print("你好") # # test(foo) # def foo(): # time.sleep(2) # print("from the foo") # def test(func): # return func # # foo=test(foo) # start=time.time() # foo() # end=time.time() # print("执行时间%s"%(end-start)) #多运行了一次 # import time # def foo(): # time.sleep(3) # print("来自foo") # # #不修改foo源代码 # #不修改foo调用方式 # # def timer(func): # start=time.time() # func() # end=time.time() # print("执行时间%s"%(end-start)) # return func # foo=timer(foo) # foo() import time def foo(): time.sleep(3) print("来自foo") #不修改foo源代码 #不修改foo调用方式 def timer(func): return func foo=timer(foo) start=time.time() foo() end = time.time() print("执行时间%s" % (end - start))
如果我失败了,至少我尝试过,不会因为痛失机会而后悔
原文地址:https://www.cnblogs.com/tangcode/p/11056622.html