Question on statically nested scopes
Manus Hand
manus at bullfrog-tech.com
Thu Aug 29 16:56:51 EDT 2002
Sorry for the typo: you need it to be vars(self).update(locals())
Manus
Sean 'Shaleh' Perry wrote:
> On Thursday 29 August 2002 11:45, Manus Hand wrote:
> > In my code, I use a very handy trick:
> >
> > class Whatever:
> > def someFunction(self, **params):
> > vars().update(locals())
> >
> > This means that whatever named variables I pass into "someFunction"
> > become attributes of the object (accessible with self.varName, etc.).
> >
>
> >>> class Foo:
> ... def doit(self, **params):
> ... vars().update(locals())
> ...
> >>> f = Foo()
> >>> f.doit(a=1, b=2, c=3)
> >>> f.a
> Traceback (most recent call last):
> File "<stdin>", line 1, in ?
> AttributeError: Foo instance has no attribute 'a'
>
> This is python 2.2.1 from my Debian system.
More information about the Python-list
mailing list