菜鸟学习日记(python)——匿名函数

Python 使用 lambda 来创建匿名函数。

lambda 函数是一种小型、匿名的内联函数,它可以具有任意数量的参数,但只能有一个表达式。

匿名函数的一般格式如下:

lambda 参数列表:表达式

表达式用于计算并返回函数结果

lambda 函数通常用于编写简单的、单行的函数,通常在需要函数作为参数传递的情况下使用,例如在 map()、filter()、reduce() 等函数中。

所谓匿名,意即不再使用 def 语句这样标准的形式定义一个函数。

  • lambda 只是一个表达式,函数体比 def 简单很多。
  • lambda 的主体是一个表达式,而不是一个代码块,通常只包含一行代码。仅仅能在 lambda 表达式中封装有限的逻辑进去。
  • lambda 函数拥有自己的命名空间,且不能访问自己参数列表之外或全局命名空间里的参数。
  • lambda 函数是匿名的,它没有函数名称,只能通过赋值给变量或作为参数传递给其他函数来使用。

以下是简单的匿名函数实例:

python 复制代码
#没有参数的匿名函数
str1=lambda:'hello python'
print(str1())
#有一个参数的匿名函数
num1=lambda a:a
print(num1(5))
#有多个参数的匿名函数
sum=lambda a,b,c:a+b+c
print(sum(1,2,3))

lambda 函数通常与内置函数如 map()、filter() 和 reduce() 一起使用,以便在集合上执行操作。

例如:

python 复制代码
from functools import reduce
list1=[1,2,3,4,5]
#map
cf=list(map(lambda a:a**2,list1))
print(cf)
#filter
os=list(filter(lambda a:a%2==0,list1))
print(os)
#reduce
qh=reduce(lambda a,b:a*b,list1)
print(qh)
相关推荐
努力搬砖的咸鱼1 分钟前
从零开始搭建 Pytest 测试框架(Python 3.8 + PyCharm 版)
python·pycharm·pytest
Calvex4 分钟前
PyCharm集成Conda环境
python·pycharm·conda
一千柯橘16 分钟前
python 项目搭建(类比 node 来学习)
python
sduwcgg20 分钟前
python的numpy的MKL加速
开发语言·python·numpy
大模型真好玩22 分钟前
可视化神器WandB,大模型训练的必备工具!
人工智能·python·mcp
东方佑23 分钟前
使用 Python 自动化 Word 文档样式复制与内容生成
python·自动化·word
钢铁男儿29 分钟前
Python 接口:从协议到抽象基 类(定义并使用一个抽象基类)
开发语言·python
databook38 分钟前
当机器学习遇见压缩感知:用少量数据重建完整世界
python·机器学习·scikit-learn
暴力求解42 分钟前
C++类和对象(上)
开发语言·c++·算法
让我们一起加油好吗1 小时前
【基础算法】枚举(普通枚举、二进制枚举)
开发语言·c++·算法·二进制·枚举·位运算