Python 示例中的 Lambda 和 filter
pythonserver side programmingprogramming
在本文中,我们将了解 Python 3.x 或更早版本中的 lambda 表达式和 filter() 函数。这些函数存在于内置的 Python 标准库中。
什么是 lambda 表达式?
内联函数可以借助 lambda 表达式来定义。lambda 表达式由 lambda 关键字组成,后跟以逗号分隔的参数列表,以及要使用以下格式的参数列表求值的表达式:
语法
Lambda 参数:表达式
返回值:通过替换表达式中的参数计算出的值。
Lambda 表达式通常以匿名函数的名称缩写,因为它们没有任何名称。这里函数声明不需要 def 关键字 dis
什么是过滤函数?
Python 提供了一个函数 filter(),该函数以一个函数和一个可迭代对象作为输入参数,并仅返回函数返回 True 的可迭代对象中的那些元素。
语法
filter(function , <list type>)
返回类型:计算值列表
让我们看一些插图,以更好地了解它们的实现。
插图 1
示例
inp_list = ['t','u','t','o','r','i','a','l'] result = list(filter(lambda x: x!='t' , inp_list)) print(result)
输出
['u', 'o', 'r', 'i', 'a', 'l']
解释
此处列表中的所有元素 other比‘t’按条件过滤,列表由 lambda 表达式帮助形成。
图 2
示例
inp_list = [1,2,3,4,5,6,7,8,9,10] result = list(filter(lambda x: x%2==0 , inp_list)) print(result)
输出
[2, 4, 6, 8, 10]
说明
这里我们从给定列表中过滤出所有偶数元素,并通过对返回值进行类型转换以列表形式显示。
结论
在本文中,我们学习了如何实现 lambda 和 filter() 函数在 Python 3.x 或更早版本中。我们还了解了这两个函数的组合用法,以获得所需的输出。
这些函数通常一起使用,因为它们提供了一种更好的方法来过滤出所需格式的输出。