python3--高阶函数

# 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()
posted @ 2016-12-11 01:12  范恒  阅读(700)  评论(0编辑  收藏  举报