Python Property Change Listener Pattern
<p>Anyone know of any easy way to track changes to a dictionary  object in python?   I am at a high level doing crud, so I have a couple methods that handle changing a dictionary, if the dictionary changes I want to call a function to basically do an Observer/Notify.</p>

<pre><code> class MyClass(object):
     def update(self, item):
        changed = False

        if(self.my_dict.has_key(item.id)):
           self.my_dict[item.id] = item
           changed = True

        if(changed):
          self.notify()
</code></pre>

<p>What I am trying to avoid is all of the tracking(setting the boolean) code.  Was hoping there was an easier way to track changes.  This is a simple case, but there could have been more complicated logic that would result in me having to set the changed flag.</p>
