首页 > 其他分享 >lambda函数和map函数的理解和使用

lambda函数和map函数的理解和使用

时间:2022-09-25 20:56:26浏览次数:67  
标签:map 函数 sum list print lambda

lambda函数

在说lambda函数前,先来想一下平时的在Python中怎么定义和使用函数的,简单的如下:

def sum(x):
    x=x+5
    return x
    
print(sum(8))

输出结果都晓得:13
上面的代码中,

def定义一个函数
sum是函数名,
x是参数,
x=x+5是执行语句

这些使用lambda函数来表达就是:

sum=lambda x : x+5

print(sum(8))

输入结果也是13
在lambda表达式中,

sum是函数名,
x是参数,
x+5是执行语句,
而lambda就相当于上一个代码中的def

这样相对比之下,lambda格式就清晰多了,也更容易理解。

lambda其实是一个匿名函数,它的格式:
函数名 = lambda 参数列表 : 执行语句
lambda也是一个函数定义的过程,但它无法完成循环递归,不可进行迭代。当有迭代需要时,可以结合map函数来使用。

map函数

map()函数是Python的一个内置函数,它会根据提供的函数对指定序列做映射。map函数格式如下:
map(函数,序列参数)
map根据给定的函数对序列参数做处理。

比如现在有一个列表是97-100,定义一个函数使每个数字都进行+1处理,这时先定义一个lambda函数,然后使用map迭代给列表中每个元素都+1,最后list输出结果:

a=[97,98,99,100]
b_sum=lambda x:x+1
c=list(map(b_sum,a))
print(c)

输出如下:
[98, 99, 100, 101]

在这里,map就是对a列表中的元素执行b_sum函数中的执行语句。

至于为什么不直接print(map(b_sum,a))而是要再使用一个list,是因为map并不是直接输出结果,它将结果封装了,使用list把列表化来看结果。大家可以自己print一下map看看结果。

若有错误敬请指正。

原文链接:https://blog.csdn.net/qq_45997545/article/details/115742358

标签:map,函数,sum,list,print,lambda
From: https://www.cnblogs.com/365djl/p/16728850.html

相关文章

  • React 函数式组件怎样进行优化
    前言目的本文只介绍函数式组件特有的性能优化方式,类组件和函数式组件都有的不介绍,比如key的使用。另外本文不详细的介绍API的使用,后面也许会写,其实想用好hooks还是......
  • lambda表达式
    1. lambda表达式1.1 什么是lambda表达式​ Lambda是一个[匿名函数][],可以把Lambda表达式理解为是一段可以传递的代码。可以写出更简洁、更灵活的代码。作为一种更紧凑......
  • C/C++ 关于默认构造函数
    前言:在C++中,对于一个类,C++的编译器都会为这个类提供四个默认函数,分别是:A()//默认构造函数~A()//默认析构函数A(constA&)//默认拷贝构造函数A&operator=(const......
  • 函数式接口作为方法的参数案例和函数式接口作为方法的返回值类型案例
    函数式接口作为方法的参数案例:/*假如java.lang.Runnable接口就是一个函数式接口假设有一个startThread方法使用该接口作为参数,那么参数就可以使用Lambda进行传......
  • js 内置函数Date
    从深入潜JavaScript日期对象方法描述*空执行Date()返回当日的日期和时间(字符串)。getDate()orsetDate()get返回月中的第几天(1-31),set设置对象当月天。......
  • C语言第18天,字符串处理函数
    字符串处理函数与printf不同,这些函数不在之前熟悉的头文件stdio.h中。而是在字符串专用的头文件string.h中。1.获取字符串长度strlenstrlen函数可以获取字符数组中的字......
  • 封装axios函数记录
    基于axios进行二次封装统一配置,便于管理下载axiosyarnaddaxios创建utils/request.js//基于axios封装的请求模块importajaxfrom'axios'//新建一......
  • Const修饰类成员函数
    主要说明const类成员函数调用方式以及this指针对应变化SimpleConst.h#pragmaonceclassA{public: inta; intb; constintc; A(inti,intj,intt); ......
  • HashMap源码分析
    主要过一遍HashMap中的常量、构造方法、put方法当我们调用put时,实际上就是调用putValpublicVput(Kkey,Vvalue){returnputVal(hash(key),key,value,false,......
  • C语言:求质因数的函数
    #include<stdio.h>voidzys(inta){inti;printf("%d=",a);for(i=2;i<=a;i++){while(a%i==0){printf("%d",i);......