[Python-Dev] Adding any() and all() (original) (raw)

Paul Moore p.f.moore at gmail.com
Fri Mar 11 12🔞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