You must log in or register to comment.
Python’s disdain for the industry standard is wild. Every other language made in the last 20 years has proper filtering that doesn’t require collecting the results back into a list after filtering like Java (granted it’s even more verbose in Java but that’s a low bar).
If Python had modern lambdas and filter was written in an inclusion or parametric polymorphic way, then you could write:
new_results = results.filter(x -> x)
Many languages have shorthands to refer to variables too, so it wouldn’t be impossible to see:
new_results = results.filter(_)
Of course in actual Python you’d instead see:
new_results = list(filter(lambda x: x, results))
which is arguably worse than
new_results = [x for x in results if x]