一天一个关于测试知识点,5分钟内讲解你最关心的软件测试问题,今天就接着来谈谈关于软件测试中的“高阶函数基本应用及Decorator装饰器”。
一、高阶函数
理解什么是高阶函数?以及高阶函数的基本应用方法
高阶函数
在了解什么是高阶函数之前,我们来看几个小例子。我们都知道在 python 中一切皆对象,函数也不例外。比如求绝对值函数 abs,我们可以用一个变量 f 指向 abs 函数,那么当调用 f() 的时候可以得到和 abs() 一样的效果,这说明变量可以指向函数!
高阶函数:能接收函数做参数的函数。
变量可以指向函数
函数的参数可以接收变量
一个函数可以接收另-一个函数作为参数
示例
(chO7 -demo09-advfunc.py) : 接收abs函数
●定义一个函数,接收x, y , f三个参数
●其中x,y是数值,f是函数
示例
ch08-demo10-equation.py
利用高阶函数实现线型代数一元二次方程求解函数
在线型代数中,经典的一元二次方程求解:ax2+bx+c=0 (满足条件:a≠0并且b2 - 4ac >0,否则无解)
二、装饰器Decorator
装饰器的应用技巧及应用场景
装饰器
装饰模式有很多经典的使用场景,例如插入日志、性能测试、事务处理等等。
有了装饰器,就可以提取大量函数中与本身功能无关的类似代码,从而达到代码重用的目的。
下面就一步步看看Python中的装饰器。
补充示例:一个简单的需求
ch07-demo11-decorator-performance.py
在每次调用某个函数的时候,都要计算一下被调用的函数所消耗的时间。
装饰器绑定指定的自定义函数
常规调用方式