On Fri, 2008-10-31 at 08:55 +1000, James Mills wrote: > What you have discovered is not a bug :) > > cheers > James >
Are you sure? It looks like his complaint isn't that it doesn't work, but that the error message is misleading. With the setup: Python 2.5.2 (r252:60911, Sep 22 2008, 12:08:38) [GCC 4.1.2 (Gentoo 4.1.2 p1.1)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> def foo( a, b, c ): ... pass ... Compare the error messages from: >>> foo( **{ 'a' : 1, 'c' : 3 } ) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: foo() takes exactly 3 non-keyword arguments (1 given) to the error message here: >>> foo( **{ 'a' : 1, 'b' : 3 } ) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: foo() takes exactly 3 non-keyword arguments (2 given) Is it even possible to get an error message in terms of required keyword arguments? I seem to remember seeing a note about keyword only arguments recently... -- John Krukoff <[EMAIL PROTECTED]> Land Title Guarantee Company -- http://mail.python.org/mailman/listinfo/python-list