Built-in functions and keyword arguments

Duncan Booth duncan.booth at invalid.invalid
Mon Oct 29 10:27:50 EDT 2007


Bruno Desthuilliers <bruno.42.desthuilliers at wtf.websiteburo.oops.com> 
wrote:

> In the second case, the name of the argument *is* 'object'. Which is not 
> the case for the builtin len (which, fwiw, has type 
> 'builtin_function_or_method', not 'function', so inspect.getargspec 
> couldn't tell me more).
> 
><ot>
> While we're at it, you should avoid using builtin's names for 
> identifiers - here, using 'object' as the arg name shadows the builtin 
> 'object' class).
></ot>

I think you are being a little bit unfair here: help(len) says:

len(...)
    len(object) -> integer
    
    Return the number of items of a sequence or mapping.

which implies that the argument to len has the name 'object' (although in 
fact it doesn't have a name). The OP was simply asking about the difference 
in calling conventions, not proposing to write code using 'object' as the 
argument name.



More information about the Python-list mailing list