匿名函数、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

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

相关推荐
Moment14 小时前
Cursor 的 5 种指令方法比较,你最喜欢哪一种?
前端·后端·github
IT_陈寒14 小时前
Vite快得离谱?揭秘它比Webpack快10倍的5个核心原理
前端·人工智能·后端
明月_清风15 小时前
性能级目录同步:IntersectionObserver 实战
前端·javascript
明月_清风15 小时前
告别暴力轮询:深度解锁浏览器“观察者家族”
前端·javascript
摸鱼的春哥15 小时前
Agent教程17:LangChain的持久化和人工干预
前端·javascript·后端
程序员爱钓鱼16 小时前
Go操作Excel实战详解:github.com/xuri/excelize/v2
前端·后端·go
子兮曰1 天前
async/await高级模式:async迭代器、错误边界与并发控制
前端·javascript·github
恋猫de小郭1 天前
2026 Flutter VS React Native ,同时在 AI 时代 VS Native 开发,你没见过的版本
android·前端·flutter
GIS之路1 天前
ArcGIS Pro 中的 Notebooks 入门
前端
IT_陈寒1 天前
React状态管理终极对决:Redux vs Context API谁更胜一筹?
前端·人工智能·后端