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

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

相关推荐
是店小二呀8 分钟前
鸿蒙PC_Dart-Sass-ohos适配全记录
linux·运维·windows
2601_958352901 小时前
A-59U 仅 37mm 却集成 USB + 双波束?
前端·回声消除·语音模块·降噪处理·降噪消回音
充电zcx7 小时前
Linux:4:开发工具详解
linux·运维·服务器
麻雀飞吧7 小时前
先判断工具用来学习、开发还是执行
人工智能·python
泯泷7 小时前
那段文字是谁删的?Yjs 14 正式版之前,一套删除归属方案的实现与边界
前端·javascript·算法
hold?fish:palm7 小时前
34 合并K个升序链表
javascript·算法·链表
人邮异步社区7 小时前
学习Python的最佳学习路径是什么?
python·程序员
野槐9 小时前
前端项目优化(有了我,会发生...)
前端
troy1289 小时前
Python 基础语法(九):Django/Flask/FastAPI 三大 Web 框架详细对比解析
python·jupyter·django·flask·github·fastapi
jzshmyt10 小时前
我用 Python 从零“生成“了一个宇宙,然后让它观察自己(v14)
人工智能·pytorch·python·numpy·matplotlib·空间计算·scipy