- # #高阶函数
- # # 1 函数接受的参数是一个函数名
- # # 2 函数的返回值是一个函数名
- # # 满足上述条件的任意一个, 都可称为高阶函数
- # import time
- # def foo():
- # time.sleep(3)# 睡了 3 秒以延长函数运行时间, 方便查看
- # print('你好啊, cat')
- # def test(func):
- #
- # starttime=time.time()
- # func()
- # stoptime=time.time()
- # print('运行时间 %s'%(stoptime-starttime))
- # test(foo)
- import time
- # 测试满足条件的函数
- # def foo():
- # print('来自 foo')
- # def test(foo):
- # return foo
- # foo()
- #
- # 不修改 foo 代码
- # 为函数增加功能
- def foo():
- time.sleep(3)
- print('来自 foo')
- def timer(func):#func 传过来的就是 foo 函数
- starttime = time.time()
- func()
- stoptime = time.time()
- print('运行时间 %s' % (stoptime - starttime))
- return func# 又执行一次 foo
- # 运行结果
- # 来自 foo
- # 运行时间 3.0008230209350586
- # 来自 foo
- res=timer(foo)
- res()
高阶函数
来源: http://www.bubuko.com/infodetail-2587202.html