James Stroud wrote: > I think you want to overload the assignment operator here. I'm not sure that > is allowed in python (I've never seen it done).... > But I don't think assignment overloading is allowed in python:
Exactly correct. Assignment is an operation on a namespace using a new value, and does not involve the former value. Something similar to assignment overloading is possible with properties, but you need to be using object attributes, not names in a module (or function locals). class SomeDemo(object): def _read_foo(self): print 'Reading foo' return self._foo def _write_foo(self, value): print 'Writing foo as %r' % value return self._foo def _del_foo(self): print 'Deleting foo' del self._foo foo = property(_read_foo, _write_foo, _del_foo) obj = SomeDemo() obj.foo = 123 obj.foo += 1 del obj.foo --Scott David Daniels [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list