python3--高阶函数

2020-01-07 15:00:32 浏览数 (1)

代码语言:javascript复制
# Auther: Aaron Fan

'''
# 高阶函数:把一个函数名,以实参的形式,传给这个函数的形参,这个函数就称为高阶函数。比如下面的形参c,对应的实参是一个函数名abs。
# 函数abs()的功能是取绝对值
def add(a,b,c):
    return c(a)   c(b)

add_value = add(-9,1,abs)

print(add_value)
'''

# 最正确的高阶函数解释
# 满足下面两个条件之一,就可称之为高阶函数:
# 1、把一个函数名当做一个实参,传给另外一个函数
# 2、返回值中包含函数名(不修改函数的调用方式)
# 示例1:
"""
import time
def bar():
    time.sleep(1)
    print('函数bar')
def test1(func):    #高阶函数(满足了条件1)
    start_time = time.time()
    func()
    stop_time = time.time()
    print("这个函数的运行时间是 %s" % (stop_time-start_time))
test1(bar)
"""
# 示例2:
import time
def bar():  #高阶函数(满足了条件2)
    time.sleep(1)
    print("in the bar")
def test2(func):
    print(func)
    return func
bar=test2(bar)
bar()

0 人点赞