asdf1234234 wrote: > -a.py- > import b > > class A: > def __init__(self): > pass > def my_method(self): > var = 1 > self.var = 2 > b.set_var(self) > print var > print self.var > > my_a = A() > my_a.my_method() > > -b.py- > def set_var(self): > var = 2 > self.var = 2 > > I want both var and self.var to be 2 at the end. Is there anything I > can pass to set_var() that will give it access to the variables in > my_method() like I can use self for the variables in the class A?
I hope there isn't a way to do this that simply. :) Why do you want to do this, or is it idle curiosity? There is almost surely a better way to solve your underlying problem. You can *read* your caller's local variables (either pass locals() as an argument or use inspect to get the frame locals), but writing to this dictionary has undefined behavior. -- Michael Hoffman -- http://mail.python.org/mailman/listinfo/python-list