arguments of a function/metaclass
Gabriel Genellina
gagsl-py at yahoo.com.ar
Tue Jan 16 12:03:01 EST 2007
"goodwolf" <Robert.Katic at gmail.com> escribió en el mensaje
news:1168964835.087773.221950 at s34g2000cwa.googlegroups.com...
> A simply solution:
>
> def __init__(self, a=1, b=2, c=3, ......):
> for key, val in locals().items():
> if key != 'self':
> setattr(self.__class__, key, val)
>
> in addition:
>
> def set(self, **kwarg):
> for key in kwargs:
> if hasattr(self.__class__, key):
> setattr(self.__class__, key, kwargs[key])
> else:
> raise ....
Why setattr(self.__class__,...) instead of setattr(self, ...)? You're
modifying the class attributes, and that's not usually intended.
--
Gabriel Genellina
More information about the Python-list
mailing list