用Python过滤
有时我们遇到两个列表的情况,我们想检查较小列表中的每个项目是否存在于较大列表中。在这种情况下,我们使用filter()
下面讨论的功能。
语法
Filter(function_name, sequence name)
此处Function_name是具有过滤条件的函数的名称。序列名称是具有需要过滤的元素的序列。它可以是集合,列表,元组或其他迭代器。
示例
在下面的示例中,我们采用了一些较大的月份名称列表,然后筛选出没有30天的月份。为此,我们创建了一个包含31天的月份的较小列表,然后应用过滤器功能。
# list of Months months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul','Aug'] # function that filters some Months def filterMonths(months): MonthsWith31 = ['Apr', 'Jun','Aug','Oct'] if(months in MonthsWith31): return True else: return False non30months = filter(filterMonths, months) print('The filtered Months :') for month in non30months: print(month)
输出结果
运行上面的代码给我们以下结果-
The filtered Months : Apr Jun Aug