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表达式一般用于函数调用的参数或类似情形,而不是用于定义一个命名的函数。
