欢迎访问宙启技术站
智能推送

Python中如何使用Lambda表达式创建匿名函数

发布时间:2023-06-04 00:41:46

在Python中,Lambda表达式是创建匿名函数的一种常用方式。它是一个只有一个表达式的函数,通常用于需要一个函数的地方但只需要一个简单的功能的场合。Lambda表达式的语法如下:

lambda 参数列表: 表达式

其中,参数列表和函数定义的参数列表一样,用逗号分隔。表达式是函数的实际执行代码。

下面举几个例子来说明如何使用Lambda表达式创建匿名函数。

1. 求平方

f = lambda x: x ** 2
print(f(5))  # 输出25

2. 根据字符串长度排序

strs = ['abc', 'a', 'bcde']
strs.sort(key=lambda s: len(s))
print(strs)  # 输出['a', 'abc', 'bcde']

3. 按照两个数的和排序

nums = [(1, 3), (2, 2), (3, 1)]
nums.sort(key=lambda x: x[0] + x[1])
print(nums)  # 输出[(3, 1), (2, 2), (1, 3)]

4. 列表中每个数增加1

nums = [1, 2, 3, 4, 5]
nums = list(map(lambda x: x + 1, nums))
print(nums)  # 输出[2, 3, 4, 5, 6]

5. 滤除列表中小于等于10的数

nums = [1, 20, 5, 13, 7]
nums = list(filter(lambda x: x > 10, nums))
print(nums)  # 输出[20, 13]

上述例子演示了Lambda表达式的多种用法,包括对数值、字符串、元组等多种数据类型的处理。需要注意的是,Lambda表达式的主要优点在于简洁、便利,但对于较为复杂的逻辑和运算,建议使用普通函数进行定义。此外,Lambda表达式一般用于函数调用的参数或类似情形,而不是用于定义一个命名的函数。