Emin wrote: > Dear Experts, > > When writing large classes, I sometimes find myself needing to copy a > lot of parameters from the argument of __init__ into self. Instead of > having twenty lines that all basically say something like self.x = x, I > often use __dict__ via something like: > > class example: > def __init__(self,a,b,c,d,e,f,g,h,i,j,k,l,m,n): > for name in > ['a','b','c','d','e','f','g','h','i','j','k','l','m','n']: > self.__dict__[name] = locals()[name] > > This saves a lot of code and makes it easier to see what is going on, > but it seems like there should be a better idiom for this task. Any > suggestions? > > Thanks, > -Emin
How about using variable length argumens? class example: def __init__(self, *args): for i in args: self.__dict__[i] = i x = example('uno','dos','tres') Luis -- http://mail.python.org/mailman/listinfo/python-list