Python函数式编程Filter传参方式
作者:技术老男孩
这篇文章主要为大家介绍了Python函数式编程Filter传参方式详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
一、函数式编程Filter:
- filter(func, seq): 调用一个布尔函数 func 来迭代遍历每个序列中的元素;返回一个使 func 返回值为 true 的元素的序列
- 如果布尔函数比较简单,直接使用 lambda 匿名函数就显得非常方便了
二、传参方式:
filter(布尔函数, 列表):
filter会返回一个对象,对象可以直接被list进行转换,转换的list保存过滤结果为True的元素,False的元素则会被扔掉
布尔函数:
返回True或False的函数
还可以传入lambda表达式来简化代码量
列表:
通常是需要过滤的列表
三、示例:
def fun(x): if x > 5: return True else: return False def fun2(x): return True if x > 1 else False if __name__ == '__main__': li = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] li2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] f1 = filter(fun, li) f2 = filter(fun2, li) f3 = filter(lambda x: True if x > 6 else False, li) print("f1", list(f1)) print("f2", list(f2)) print("f3", list(f3))
以上就是Python函数式编程Filter传参方式的详细内容,更多关于Python Filter传参的资料请关注脚本之家其它相关文章!