2018-03-06 16:58 GMT+03:00 Jason Friedman <jsf80...@gmail.com>: > > as a ordinary Python user I'd be interested in improvements to the > documentation, including suggestions on real-world usage. >
I'm just an ordinary user, just like you :) > Kirill, taking deprecation/removal off the table, what changes would you > recommend to the documentation? > My English is about basic level, so you may need to fix the spelling. But I would write as follows: filter(function, iterable) Construct an iterator from those elements of iterable for which function returns truthy values. iterable may be either a sequence, a container which supports iteration, or an iterator. Note that filter(function, iterable) is equivalent to the generator expression (item for item in iterable if function(item)). In cases when function corresponds to a simple lambda function a generator expression should be preferred. For example, when it is necessary to eliminate all multiples of three (x for x in range(100) if x % 3) should be used, instead of filter(lambda x: x % 3, range(100)) See itertools.filterfalse() for the complementary function that returns elements of iterable for which function returns false. Note: For some historical reasons as the first argument you can use None instead of function, in this case the identity function is assumed. That is, all elements of iterable that are false are removed which is equivalent to (item for item in iterable if item). Currently, for the same purpose the preferred form is `filter(bool, iterable)`. p.s.: maybe _function_ should be changed to _callable_. With kind regards, -gdg -- https://mail.python.org/mailman/listinfo/python-list