标签:art 函数调用 情况 参数 情况下 UNC star print 初识
定义:
变量可以指向函数,函数的参数能接收变量,那么,一个函数可以接收另一个函数作为参数,这种函数就称之为高阶函数。
简单说就是:把函数当差参数传递的函数就是高阶函数
原则:
1、不能修改被装饰函数的源代码;
2、不能修改被装饰函数的调用方式。
实例1:
# abs 内置取绝对值函数 def add(a,b,f): return f(a) + f(b) #a的绝对值+b的绝对值 print(add(1,-2,abs)) # 取3,-6的绝对值之和
返回值:3
在不修改被装饰函数源代码的情况下为其添加功能,实例2:
import time def bar(): time.sleep(2) print(‘第一个函数‘) def test1(func): start_time=time.time() #开始时间 func() #调用bar函数 stop_time=time.time() #结束时间 print(‘函数运行时间:‘,stop_time-start_time) test1(bar)
不改变函数调用方式,例3:
import time def bar(): time.sleep(2) print(‘第一个函数‘) def test2(func): print(func) return func #test2(bar) #传递变量内存地址 #test2(bar()) #传递变量值,不符合高阶函数规范 bar=test2(bar) bar()
标签:art 函数调用 情况 参数 情况下 UNC star print 初识
原文地址:https://www.cnblogs.com/simple-li/p/9741120.html