首页 > 其他 > 详细

高阶函数

时间:2018-03-25 11:41:10      阅读:174      评论:0      收藏:0      [点我收藏+]
‘‘‘
高阶函数:
1 把一个函数名当作实参传递给另外一个函数(在不修改被装饰函数源代码情况下,为其添加功能)
2 返回值中包含函数名
‘‘‘

import time


#为bar函数添加计时功能
# def foo(func):
    # start_time = time.time()
    # func()
    # finish_time = time.time()
    # print("the bar function has run %s" % (finish_time-start_time))
    
# def bar():
    # time.sleep(3)
    # print("in the bar")

# #实现了新功能,没有修改bar的源代码,但是调用方式改变了
# foo(bar)

#以函数返回值的形式,为bar函数添加计时功能
def foo(func):
    start_time = time.time()
    func()
    finish_time = time.time()
    print("the bar function has run %s" % (finish_time-start_time))
    return func
def bar():
    time.sleep(3)
    print("in the bar")
#不改变bar函数的调用方法为其添加功能
bar = foo(bar)
bar()

  

高阶函数

原文:https://www.cnblogs.com/ericbai/p/8643164.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!