We all know that using __getattr__() we can compute an instance variable on demand, for example:
class Foo: def __getattr__ (self, name): if name == 'bar': self.bar = 'apple' return self.bar else: raise AttributeError() Then we can f = Foo() s1 = f.bar s2 = f.bar # this uses the "cached" result My question is can we do the same with class variables? I can't find a class-equivalent __getattr__ for this purpose. The key is to allow the use of the following statement Foo.bar # bar is a class variable of Foo computed on demand without unnecessary fudge. Thanks. -- http://mail.python.org/mailman/listinfo/python-list