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

R. David Murray rdmurray at bitdance.com
Thu May 20 02:20:04 CEST 2010


On Thu, 20 May 2010 01:42:08 +0200, =?ISO-8859-1?Q?Giampaolo_Rodol=E0?= <g.rodola at gmail.com> wrote:
> >>> class A:
> ...     def echo(self, x):
> ...             return x
> ...
> >>> a = A()
> >>> a.echo()
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
> TypeError: echo() takes exactly 2 arguments (1 given)
> >>>
> 
> I bet my last 2 cents this has already been raised in past but I want
> to give it a try and revamp the subject anyway.
> Is there a reason why the error shouldn't be adjusted to state that
> *1* argument is actually required instead of 2?

You can contribute to issue 2516 if you like :)

http://bugs.python.org/issue2516

--
R. David Murray                                      www.bitdance.com


More information about the Python-Dev mailing list