On 27 December 2012 20:47, Joseph L. Casale <jcas...@activenetwerx.com> wrote: >> Don't use kwargs for this. List out the arguments in the function >> spec and give the optional ones reasonable defaults. > >> I only use kwargs myself when the set of possible arguments is dynamic >> or unknown. > > Gotch ya, but when the inputs to some keywords are similar, if the function > is called > with two of three (which is valid) and the arg name isn't used, the > assignment is order > dependent and arbitrary in a sense and I can not distinguish. > > It would be nice if you could force the keyword to be mandatory to forgo the > assumption > in assignment like kwargs provides with gets. I suppose all the time wasted > here is in vain > as the caller could blunder elsewhere...
In Python 3 you can do this using keyword-only arguments like so (note the asterisk that separates keyword arguments from positional arguments): def my_func(self, *, some_key=MISSING, another_key=MISSING): Oscar -- http://mail.python.org/mailman/listinfo/python-list