Есть некий класс, все атрибуты у которого незадекларированы в явном виде, но для которого определен __getattr__(). Нужно этот __getattr__() реализовать так, чтобы можно было сказать
someattr = ClassName.foo
и возвращалось значение одного типа, но если сказать
instance = ClassName()
someattr = instance.foo
возвращалось значение совершенно другого типа.
Что мне надо дочитать, чтобы реализовать такой класс?