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

左右拉动查看完整指令

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

常规调用方式


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

相关推荐
2601_9491465318 分钟前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
陌上丨21 分钟前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存
曹牧23 分钟前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX29 分钟前
服务异步通信
开发语言·后端·微服务·ruby
AI_567832 分钟前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
zmzb010336 分钟前
C++课后习题训练记录Day98
开发语言·c++
ValhallaCoder39 分钟前
hot100-二叉树I
数据结构·python·算法·二叉树
ccecw1 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
JH30731 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践
数据库·mysql
数据知道1 小时前
PostgreSQL 核心原理:如何利用多核 CPU 加速大数据量扫描(并行查询)
数据库·postgresql