lambda 定义匿名函数
语法:
lambda arguments: expression
- 此函数可以有任意数量的参数,但只能有一个表达式,该表达式将被计算并返回。
- 一种是在需要函数对象的地方自由使用lambda函数。
- 它除了在函数中使用其他类型的表达式外,在编程的特定领域也有各种用途。
Example 1: lambnda 使用方式
def cube(y):
return y*y*y
lambda_cube = lambda y: y*y*y
Example 2: list 奇数
li = [5, 7, 22, 97, 54, 62, 77, 23, 73, 61]
final_list = list(filter(lambda x: (x%2 != 0) , li))
print(final_list)
Example 3: list 求大于某个值
ages = [13, 90, 17, 59, 21, 60, 5]
adults = list(filter(lambda age: age>18, ages))
print(adults)
Example 4: 求两个数组的交集
def interSection(arr1,arr2):
result = list(filter(lambda x: x in arr1, arr2))
print ("Intersection : ",result)
if __name__ == "__main__":
arr1 = [1, 3, 4, 5, 7]
arr2 = [2, 3, 5, 6]
interSection(arr1,arr2)
Example 5: 求list 中是回文字符串
my_list = ["geeks", "geeg", "keek", "practice", "aa"]
result = list(filter(lambda x: (x == "".join(reversed(x))), my_list))
print(result)
参数:
https://www.geeksforgeeks.org/python-lambda-anonymous-functions-filter-map-reduce/