码迷,mamicode.com
首页 > 编程语言 > 详细

python之高阶函数

时间:2018-04-30 13:21:30      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:返回值   imp   时间   turn   def   调用   pre   运行   代码   

一:高阶函数的定义:

1)函数接受的参数是一个函数名

2)函数的返回值是一个函数名

3)满足上述条件任意一个,都可称之为高阶函数

二:示例

#函数的参数是个函数名
import time
def foo():
    print("nihao")

def test(func):
    print(func)
    start_time = time.time()
    func()
    stop_time = time.time()
    print("函数的运行时间是 %s" %(stop_time-start_time))
test(foo)

  

三:

#想要为foo加上新共能,不修改源代码
import time
def foo():
    time.sleep(3)
    print("来自foo")
#不修改foo源代码
#不修改foo调用方式

def timer(func):
    star_time = time.time()
    func()
    stop_time = time.time()
    print("函数运行时间是:%s" %(stop_time-star_time))
    return  func
foo=timer(foo)
foo() #保证函数的调用方式不被改变
#上面这段代码多运行了一次,不合格,
#结论:高阶函数自己满足不了装饰器

  

python之高阶函数

标签:返回值   imp   时间   turn   def   调用   pre   运行   代码   

原文地址:https://www.cnblogs.com/wangyue0925/p/8973147.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!