📅  最后修改于: 2023-12-03 15:15:04.099000             🧑  作者: Mango
在编程中,我们常常需要对一组数据进行筛选和过滤。这时,使用 filter r 函数可以很方便地实现这个功能。该函数的作用是接受一个列表,对其进行筛选,返回一个新的列表,其中只包含符合筛选条件的元素。
new_list = filter(function, iterable)
其中,function
表示筛选条件, iterable
表示待筛选的数据集。函数返回一个新的列表,该列表中只保留符合条件的元素。
lst = [1, 2, 3, 4, 5, 6]
new_lst = list(filter(lambda x: x % 2 == 0, lst))
print(new_lst)
输出结果:
[2, 4, 6]
import os
file_list = os.listdir('./')
txt_files = list(filter(lambda x: x.endswith('.txt'), file_list))
print(txt_files)
输出结果:
['file1.txt', 'file2.txt', 'readme.txt']
filter r
函数返回的是一个迭代器,如果需要得到一个列表,则需要使用list()
函数进行转换。filter r
函数会对列表中的每一个元素都执行一次筛选条件函数。因此,如果数据集很大,函数复杂度很高,那么程序的执行效率会很低。filter r
函数返回的是一个迭代器,而在 Python 2 中,则返回一个列表。以上就是对 filter r
的介绍,希望可以帮助到大家。