Python lambda函数的学习

Python lambda函数的学习lambda函数在python基础中没看过,查找资料目前知道如下的用法1.用于简单表达式的计算lambda参数:表达式如:result=lambdax:x**2print(resu

大家好,又见面了,我是你们的朋友全栈君。

 lambda函数在python 基础中没看过,查找资料目前知道如下的用法

1. 用于简单表达式的计算
lambda 参数:表达式

如:
result = lambda x: x**2
print(result(3))

---- 参数也可以有多个

result = lambda x,y:x+y
print(result(3,4))


2. filter函数和 lambda函数,此时lambda函数用于指定过滤列表元素的条件
y = [1,3,4,5,6,7,10,8]
res = filter(lambda x:x%2 ==0, y)
print(list(res))
----是偶数打印出来-----

3. sorted 函数和lambda函数,用于指定对列表中所有元素进行排序

y = [1,3,4,5,6,7,10,8]
    res = sorted(y, key=lambda x: abs(5-x))
print(res)
-------倒序排增加关键字--------------
    res = sorted(y, key=lambda x: abs(5 - x),reverse=True)


4. map 函数和lambda函数,用于指定对列表中每一个元素的共同操作
y = [1,3,4,5,6,7,10,8,6]
res = map(lambda x:x-1,y)
print(list(res))

5. reduce函数和lambda函数,---对相邻两个数按一定要求结合

如:将相邻两个数以,复制给变量,该变量为字符串

from functools import reduce
res =
reduce(lambda a, b: '{},{}'.format(a, b), [1, 2, 3, 4, 5, 6, 7, 8, 9])
print(res)

----结果------
1,2,3,4,5,6,7,8,9

如:将相邻数累加

from functools import reduce

y = [1, 3, 4, 5, 6, 7, 10, 8]
print(reduce(lambda x,z:x+z,y))

'''过程'''
1+3+4+5+6+7+10+8

# 相邻的数相乘 + 1得出一个新值再和后面相邻的数相乘 + 1
from functools import reduce
y = [1, 3, 4, 5, 6]
print(reduce(lambda x,z:x*z+1,y))

'''
运行步骤
1 * 3 + 1=4
4* 4 + 1 = 17
17 * 5 + 1 = 86
86 * 6 + 1 = 517












版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155908.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • u盘文件夹exe病毒彻底_u盘中病毒文件变成快捷方式怎么办

    u盘文件夹exe病毒彻底_u盘中病毒文件变成快捷方式怎么办笔者在使用U盘时,无意之间发现U盘所有文件的后缀名均变为“.exe”,经过查询相关资料,确认这是一种病毒(文件夹EXE病毒)一、简介:木马名称:Worm.Win32.AutoRun.soq,当把U盘插入到一台电脑后,U盘内生成了以原文件夹名字命名的文件,且扩展名为exe,其原理是把原来的文件隐藏,重新生成同名的exe文件。二、解决方案:百度下载USBCleaner,根据软件提示进行操作即可完…

    2025年7月29日
    3
  • 最全java面试题及答案(208道)「建议收藏」

    最全java面试题及答案(208道)「建议收藏」本文分为十九个模块,分别是:「Java基础、容器、多线程、反射、对象拷贝、JavaWeb、异常、网络、设计模式、Spring/SpringMVC、SpringBoot/SpringCloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、MySQL、Redis、JVM」,如下图所示:共包含208道面试题,本文的宗旨是为读者朋友们整理一份详实而又权威的面试清单,下面一起进入主题吧。Java基础1.JDK和JRE有什么区别?…

    2022年8月10日
    10
  • 命令行连接mongodb_yum安装mongodb

    命令行连接mongodb_yum安装mongodb情况:1.使用xmanage能远程链接centos

    2022年8月21日
    6
  • js 取模 取余

    var i=10;var j=3;var mo=Math.floor(i/j);var yu=i%j;

    2022年4月9日
    42
  • Win10+Ubuntu双系统修复Ubuntu系统引导

    Win10+Ubuntu双系统修复Ubuntu系统引导amp amp NBSP amp amp NBSP amp amp NBSP amp amp NBSP 这两天笔者安装 win10 ubuntu16 04 双系统 因为网络上能找到大量的资料 安装过程此处就不多讲 因为笔者电脑是华硕主板 bios 默认设置为安全启动 笔者猜测会阻止加载 ubuntu 引导 导致双系统不能随意引导 先不管那么多 现在的问题是 Ubuntu 已经安装成功 开机直接进入 win10 所以笔者的

    2025年11月23日
    5
  • Python玩转emoji表情 一行代码的事儿!

    Python玩转emoji表情 一行代码的事儿!Python可以实现emoji表情一行代码的事儿!有时候在代码中加入一些有趣的操作可以使得友好度UP好几个LEVEL,正好了解到Python支持emoji表情的输出,实现方式相当简单。

    2022年4月28日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号