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

news/2024/7/7 19:02:33

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

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

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

lambda 参数列表:表达式

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

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

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

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

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

#没有参数的匿名函数
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() 一起使用,以便在集合上执行操作。

例如:

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)


http://lihuaxi.xjx100.cn/news/1899377.html

相关文章

centOS7 安装tailscale并启用子网路由

1、在centOS7上安装Tailscale客户端 #安装命令所在官网位置:https://tailscale.com/download/linux #具体命令为: curl -fsSL https://tailscale.com/install.sh | sh #命令执行后如下图所示2、设置允许IP转发和IP伪装。 安装后,您可以启动…

Axure的交互样式和情形

Axure的交互样式和情形 交互样式 Axure是一个流行的原型设计工具,它允许您创建交互式原型,模拟应用程序或网站的功能和用户界面。在Axure中,您可以设置各种交互样式来使原型更加生动和真实。 链接触发器:通过给一个元素添加链接…

第2章 线性结构

一、选择题 1. 顺序存储结构的优点是( A ) A.存储密度大 B.插入运算方便 C.删除运算方便 D.可用于各种逻辑结构的存储表示 2. 下面关于线性表的叙述中,错误的是( B…

k8s - container

1、容器的生命周期: (1) 简介: Kubernetes 会跟踪 Pod 中每个容器的状态,就像它跟踪 Pod 总体上的阶段一样。 可以使用容器生命周期回调,在容器生命周期中的特定状态点触发事件。 ● 容器生命周期回调: 在容器的生…

服务注册与发现

本篇主要介绍的是Spring Cloud Eureka。 1.1 简介 Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能,服务治理可以说是微服务架构中最为核心和基…

Webpack cl4 配置

基本配置: module.exports defineConfig({transpileDependencies: false,lintOnSave: false,outputDir: process.env.VUE_APP_DIST, // 打包后文件的目录publicPath: ./, // 静态资源路径(默认/,打包后会白屏)assetsDir: static…

1.3 第一个C程序

一、Dev-C的安装 下载地址:https://sourceforge.net/projects/orwelldevcpp/ 二、Dev-C简单的使用 2.1 首次打开配置 2.2 第一个程序的编辑、编译、运行 三、Hello Word程序讲解 3.1 程序框架 几乎所有的程序都需要这一段代码 3.2 输出 printf("Hello World…

Stable-Diffusion|文生图 完蛋我被美女包围了人物Lora(四)

前面几篇: Stable-Diffusion|window10安装GPU版本的 Stable-Diffusion-WebUI遇到的一些问题(一) 【Stable-Diffusion|入门怎么下载与使用civitai网站的模型(二)】 Stable-Diffusion|文生图 拍立得纪实风格的Lora 图例&…