匿名函数、lambda匿名函数 ( Everything is up to us!)

1、匿名函数

在前面的函数学习中,我们一直使用的函数,都是接受数据作为参数传入:

·数字

·字符串

·字典、列表、元组等

其实,我们学习的函数本身,也可以作为参数传入另一个函数内。

1) 函数作为参数传递

python 复制代码
# 定义一个函数,接收另一个函数作为传入函数
def test_func(compute):
    result = compute(1, 2)  # 确定compute是函数
    print(f"compute参数类型是:{type(compute)}")
    print(f"计算结果是:{result}")

def compute(x, y):
    return x + y

test_func(compute)

# compute参数类型是:<class 'function'>
# 计算结果是:3

2)注意

·函数本身是可以作为函数,传入另一个函数中进行使用。

·将函数传入的作用在于:传入计算逻辑,而非传入数据。

2、lambda匿名函数

1)def关键字与lambda关键字的区别

在函数的定义中,

·def关键字,可以定义带有名称的函数

·lambda关键字,可以定义匿名函数(无名称)

(有名称的函数,可以基于名称重复使用,无名称的函数,只可临时使用一次。)

2)匿名函数定义语法

lambda 传入参数 : 函数体(一行代码):

·lambda是关键字,表示定义匿名函数

·传入参数表示匿名函数的形式参数,如:x,y表示接收2个形式参数

·函数体,表示函数的执行逻辑,要注意:只能写一行,无法写多行代码

python 复制代码
def test_func(compute):
    result = compute(1, 2)
    print(f"计算结果{result}")

test_func(lambda x , y : x + y)

# 计算结果3

完结 🎉 多加练习吖 继续更新 加个关注收藏一下叭~

相关推荐
y***86697 小时前
TypeScript在Electron应用中的使用
javascript·typescript·electron
小奶包他干奶奶8 小时前
Webpack学习——Loader(文件转换器)
前端·学习·webpack
zy happy9 小时前
若依 vue3 报错:找不到模块“@/api/xxxx/xxxxx”或其相应的类型声明。。Vue 3 can not find mod
前端·javascript·vue.js
青瓷程序设计9 小时前
动物识别系统【最新版】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积神经网络算法
人工智能·python·深度学习
tobebetter95279 小时前
How to manage python versions on windows
开发语言·windows·python
潘小安9 小时前
Git Worktree + Claude Code:让你的开发效率翻倍的秘密武器
前端
F_D_Z9 小时前
数据集相关类代码回顾理解 | sns.distplot\%matplotlib inline\sns.scatterplot
python·深度学习·matplotlib
xu_yule9 小时前
Linux_12(进程信号)内核态和用户态+处理信号+不可重入函数+volatile
linux·运维·服务器
meichaoWen9 小时前
【Vue3】vue3的全面学习(一)
前端·javascript·学习
虾..9 小时前
Linux 环境变量&&进程优先级
linux·运维·服务器