Python | 高阶函数基本应用及Decorator装饰器

高阶函数

▲ 理解什么是高阶函数?以及高阶函数的基本应用方法

高阶函数

在了解什么是高阶函数之前,我们来看几个小例子。我们都知道在 python 中一切皆对象,函数也不例外。比如求绝对值函数 abs,我们可以用一个变量 f 指向 abs 函数,那么当调用 f() 的时候可以得到和 abs() 一样的效果,这说明变量可以指向函数!

高阶函数:能接收函数做参数的函数。

a.变量可以指向函数

b.函数的参数可以接收变量

c.一个函数可以接收另-一个函数作为参数

示例

复制代码
(chO7 -demo09-advfunc.py) : 接收abs函数

左右拉动查看完整指令

●定义一个函数,接收x, y , f三个参数

●其中x,y是数值,f是函数

示例

复制代码
ch08-demo10-equation.py

左右拉动查看完整指令

利用高阶函数实现线型代数一元二次方程求解函数

在线型代数中,经典的一元二次方程求解:ax平方+bx+c=0 (满足条件:a≠0并且b平方 - 4ac >0,否则无解)

装饰器Decorator

▲ 装饰器的应用技巧及应用场景

装饰器

装饰模式有很多经典的使用场景,例如插入日志、性能测试、事务处理等等。

有了装饰器,就可以提取大量函数中与本身功能无关的类似代码,从而达到代码重用的目的。

下面就一步步看看Python中的装饰器。

补充示例:一个简单的需求

复制代码
ch07-demo11-decorator-performance.py

左右拉动查看完整指令

装饰器绑定指定的自定义函数

常规调用方式


今天的内容就学习到这里了,每个工作日小编都会更新一个有关测试的小知识,希望大家多多关注我们,一起来学习喔!

相关推荐
dialect_5 小时前
KMP算法
开发语言·c++·算法
captain3765 小时前
MyBatis(入门5)其他查询操作
java·数据库·spring boot·mybatis
总要学点什么5 小时前
第89篇:三维特效-螺旋圆效果——让螺旋臂卷起一圈圈外扩的涟漪
开发语言·javascript·ecmascript·webgl·cesium·空间分析·1024程序员节
前端精髓6 小时前
结构化输出with_structured_output(抽卡)
python·langchain
小此方6 小时前
Re:Mysql数据库基础篇(八):详细讲解复合查询、多表查询、自连接、多行、多列子查询与合并查询
数据库·mysql
xszivvvv6 小时前
Mariadb数据库frm文件异常,如何恢复数据
数据库·mariadb
smile_life_6 小时前
MySQL 设置 防止账户被暴力破解
数据库·mysql
尹人入圣6 小时前
目前热门的IP驱动产业新场景新工具
网络·python·网络协议·tcp/ip
ShineWinsu7 小时前
对于Qt:QRadioButton常见属性以及QButtonGroup的解析
数据库·c++·qt·microsoft·gui·qradiobutton·qbuttongroup
开开心心_Every7 小时前
快速隐藏程序工具自定义快捷键一键切换
java·开发语言·前端·spring·智能手机·word·intellij-idea