[Python-Dev] Reasons behind misleading TypeError message when passing the wrong number of arguments to a method (original) (raw)

Ben Finney ben+python at benfinney.id.au
Thu May 20 09:46:54 CEST 2010


Greg Ewing <greg.ewing at canterbury.ac.nz> writes:

John Arbash Meinel wrote:

> Because you wouldn't want to have > > A.echo() > > Say that it takes 1 argument and (-1 given) ? Something like "1 argument in addition to 'self'" would be reasonably clear and would cover both situations.

Except that there's nothing special to the syntax or parser about the name ‘self’.

+1 on fixing this from me, too. Even when you understand exactly what's going on, it's annoying having to make the mental adjustment every time.

Would it help if the traceback showed the ‘repr()’ of each of the arguments received? That way it would be much clearer when the instance was received as the first argument.

-- \ “Any sufficiently advanced bug is indistinguishable from a | `\ feature.” —Rich Kulawiec | o_) | Ben Finney



More information about the Python-Dev mailing list