十一、Python——匿名函数

news/2025/2/13 2:57:21/

1.匿名函数:简化函数定义

2.格式

  • lambda 参数1,参数2…:运算

3.匿名函数特点

  • 不需要指明函数名
  • 定义只有一条语句
  • 函数体必须是一个表达式
  • 不能显示使用return

4.匿名函数实现求和

s = lambda a,b:a + b
result = s(1,2)
print(result)  # 3

5.匿名函数作为参数

  • 第一个参数为函数对象
  • 另外两个参数为调用该函数所需的参数
  • 函数体则是调用第一个参数的函数对象
def foo(func,n,m)return func(n,m)# 调用
foo(lambda n,m:n+m,2,3)  # 计算两个数相加

注意:通常只会把仅使用一次的函数定义为匿名函数,除非明确知道为什么使用匿名函数

  • 利用map函数对列表中的奇数实现+1.偶数不变
list1 = [1,2,3,4,5,6]
result = map(lambda x:x if x % 2 == 0 else x +1,list1)
print(list(result))  # [2,2,4,4,6,6]# 上述代码等价于下面代码
for index,i in enumerate(list1):if i % 2 != 0list1[index] = i + 1
print(list1)
  • 利用reduce函数对元组中元素进行加减乘除运算
from functools import reeduce
tuple1 = (1,3,5,7)
result1 = reduce(lambda x,y:x + y,tuple1)
print(result1) # 16
result2 = reduce(lambda x,y:x + y,tuple1,11)
print(result2) # 27
  • filter函数:过滤
list1 = [2,7,11,46]
result = filter(lambda x : x > 10,list1)
print(list(result)) # [11,46]
  • sorted函数对年龄进行排序
students = sorted(students,key = lambda x : x['age'])   # 类型为字典
print(students)

http://www.ppmy.cn/news/24404.html

相关文章

关于链表中插入结点的操作……

服了,好久没敲链表了,这都忘了 newnode->next cur->next; cur->next newnode; newnode->next cur->next; cur->next newnode; newnode->next cur->next; cur->next newnode; newnode->next cur->next; cur-…

谷粒商城-品牌管理-JSR303数据校验

后端在处理前端传过来的数据时,尽管前端表单已经加了校验逻辑,但是作为严谨考虑,在后端对接口传输的数据做校验也必不可少。 开启校验: 实体类上增加校验注解,接口参数前增加Valid 开启校验 package com.xxh.product.…

【C++1】函数重载,类和对象,引用,string类,vector容器,类继承和多态,/socket,进程信号,public,ooci

文章目录1.函数重载:writetofile(),Ctrue和false,C0和非02.类和对象:vprintf2.1 构造函数:对成员变量初始化2.2 析构函数:一个类只有一个,不允许被重载3.引用:C中&取地址&#x…

Redis使用方式

一、Redis基础部分: 1、redis介绍与安装比mysql快10倍以上 *****************redis适用场合**************** 1.取最新N个数据的操作 2.排行榜应用,取TOP N 操作 3.需要精确设定过期时间的应用 4.计数器应用 5.Uniq操作,获取某段时间所有数据排重值 6.实时系统,反垃圾系统7.P…

freesurfer如何将组模板投影到个体空间——如投影 Schaefer2018 到个体空间

freesurfer如何将组模板投影到个体空间——如投影 Schaefer2018 到个体空间 freesurfer如何将组模板投影到个体空间? freesurfer如何将组模板投影到个体空间——如投影 Schaefer2018 到个体空间freesurfer的整理流程freesurfer的安装freesurfer对结构像分割流程及批处理代码fr…

为什么神经网络做不了2次函数拟合,网上的都是骗人的吗?

环境:tensorflow2 kaggle 这几天突发奇想,用深度学习训练2次函数。先在网上找找相同的资料这方面资料太少了。大多数如下: 。 给我的感觉就是,用深度学习来做,真的很容易。 网上写出代码分析的比较少。但是也找到了…

【Unity3D 常用插件】Haste插件

一,Haste介绍 Haste插件是一款针对 Unity 3D 的 Everthing软件,可以实现基于名称快速定位对象的功能。Unity 3D 编辑器也自带了搜索功能,但是在 project视图 和 Hierarchy视图 中的对象需要分别查找,不支持模糊匹配。Haste插件就…

【Python语言基础】——Python NumPy 数组索引

Python语言基础——Python NumPy 数组索引 文章目录 Python语言基础——Python NumPy 数组索引一、Python NumPy 数组索引一、Python NumPy 数组索引 访问数组元素 数组索引等同于访问数组元素。 您可以通过引用其索引号来访问数组元素。 NumPy 数组中的索引以 0 开头,这意味…