[EMAIL PROTECTED] wrote: > Now, when the pic_1 and pic_2 attributes are accessed, they will return > an Image instance, which is something different to which they were > initially assigned. Is this kind of behavior bad form?
That's pretty good, I like it. > Likewise, what > do people think about raising an exception during an assignment > operation? I prefer to use the 'if key in dict' idiom, but I know some others prefer your method. I foresee 2 difficulties, neither earth shattering: 1. Speed might be an issue - on prior projects, my speed tests showed that overriding getattr and setattr slowed the program down by quite a bit. 2. I see you are caching the loaded picture, but I would choose a different bag than __dict__. I would create a dict called cache in the class to store it in, to avoid possible name conflicts where the stat name has the same name as the png (which is unlikely, I realize.) A potential enhancement would be to have some sort of cleanup, to where if a picture is not being used by any assignment statement, it would drop off. Or perhaps a 'force cleanup' where it clears out all the cache, which would force the 'loadimage' routine to run again the next time the picture is referenced. Good job! --Kamilche -- http://mail.python.org/mailman/listinfo/python-list