【编程】Python filter() 函数

使用 filter() 方法可以使Python 程序开发获得功能性提升,开发者可以设计出清晰,简短的代码,避免在循环或分支控制中某些不必要的复杂因素的影响。

filter() 方法通过一个函数检查每一个项元素是否符合,从而完成过滤,返回一个可遍历集。 返回的可遍历集,或者是一个序列,或者是一个支持遍历的容器。如果没有指定过滤函数,则假定是标识函数,为假的元素被移除。

语法

 
filter(function, iterable)
 
       
  • function : 测试每一个元素是否符合
  • iterable : 被过滤的遍历集

列表过滤

# 定义检测函数 
def foo(var):
directions = ['east', 'west', 'north', 'south']
if (var in directions):
return True
else:
return False
# 要过滤的列表
myList = ['sunday', 'east', 'march', 'west', '101', 'north', 'abcd', 'south']
# 过滤
filtered = filter(foo, myList)
print('过滤结果:')
for str in filtered:
print(str)

结果

过滤结果:
east
west
north
south

使用lambda表达式进行过滤

myList = [10, 15, 40, 6, 30, -20] 
#返回10的倍数
filtered = list(filter(lambda n : n%10 == 0, myList))
print(filtered)

结果

[10, 40, 30, -20]



【编程】Python 字符串和整数
【编程】Python range() 函数
【编程】Python 多线程编程
【编程】Python 多线程和进程
【编程】Python 读写CSV文件
【编程】Python 解析XML
【编程】Python 终止程序
【编程】Python 随机数
【编程】Python 异常处理
【编程】Python 日期和时间
【编程】Python 多线程套接字
【编程】Python 套接字
【编程】Python FTP
【编程】Python 网页

此条目发表在人工智能, 服务器, 程序开发分类目录,贴了, , 标签。将固定链接加入收藏夹。