[Python-Dev] Adding any() and all()
Paul Moore
p.f.moore at gmail.com
Fri Mar 11 12:18:47 CET 2005
On Fri, 11 Mar 2005 11:30:38 +0100, BJörn Lindqvist <bjourne at gmail.com> wrote:
> Not sure this is pertinent but anyway: "any" and "all" are often used
> as variable names. "all" especially often and then almost always as a
> list of something. It would not be good to add "all" to the list of
> words to watch out for. Also, "all" is usually thought of as a list of
> (all) things. In my mind it doesn't make sense (yet) that all(seq)
> returns true if all elements of seq is true and false otherwise, I
> would have expected "all" to return a list. "any" is better because it
> is very obvious it can only return one thing.
Using "any" and "all" as variables hides the builtins, but doesn't
disallow their use elsewhere. Personally, though, I wouldn't use "any"
or "all" as variable names, so that's a style issue.
As far as the names making sense is concerned, they are perfect in context:
if all(i > 0 for i in int_list):
if any(invalid(s) for s in input_values):
While you may think that use in any other context looks a little less
natural (something I'm not convinced of), in the intended context, the
names seem ideal to me.
Paul.
More information about the Python-Dev
mailing list