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












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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

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