Am 26.12.2010 18:53, schrieb kj: > It means that, for both subclasses, del fails to trigger the > dynamically installed instance method __delitem__.
Magic methods like __delitem__ are looked up on the type, not on the instance. You can't change the behaviour on instances. > If I replace dict with UserDict, *both* deletion attempts lead to > a call to the dynamic __delitem__ method, and are thus blocked. > This is the behavior I expected of dict (and will help me hold on > to my belief that I'm not going insane when inevitably I'm told > that there's no bug in dict or list). UserDict is an old style class (not a subclass of object). Old style classes behave differently. Christian -- http://mail.python.org/mailman/listinfo/python-list