如何使用过滤器一个坏内置?

时间:2014-02-16 03:05:02

标签: python

这可能是一个基本问题,但我很想知道我是否在我的代码中使用了内置过滤器但是pylint报告

W: 67,13: Used builtin function 'filter' (bad-builtin)

怎么会那么糟糕?

1 个答案:

答案 0 :(得分:3)

您需要决定是否关心此警告。

filter(my_filter, my_iterable)

相当于:

[item for item in my_iterable if my_filter(item)]

在python 3中,filter就像一个生成器,这意味着它懒惰地评估事物,例如:

(item for item in my_iterable if my_filter(item))

我会忽略这个特别警告。 Pyflakes可能会给你一个更有用的输出。