__getattr__ on non-instantiated class
Fredp
federico.pelloni at gmail.com
Wed May 3 12:32:03 EDT 2006
Larry Bates ha scritto:
> Fredp wrote:
> > Hi
> > I was wondering if it is possible to have the various magic methods,
> > mainly __getattr__ and __setattr__, and @property attributes called
> > when accessing the attribute of a non-intantiated class.
> >
> > Imagin something like this:
> > #####
> > class MyClass:
> > @property
> > def prop(self):
> > print "Accessed"
> > return "ABCD"
> >
> > print MyClass.prop
> > #####
> > having it printing:
> > #####
> > Accessed
> > ABCD
> > #####
> >
> > Thanks very much
> >
> Looks like you want Python to execute a method on an uninstantiated
> class. I can't imagine how you would use such a thing. Can you
> give us a real-life "use case"?
>
> This produces the output you want:
>
> m=MyClass()
> print m.prop()
>
> -Larry Bates
I have something like a simple ORM which objects haven't a fixed number
of fields, and I need to have properties (or methods) for each of them,
but currently it is more comfortable for me to use uninstantiaded
classes (as someway SQLObject does).
I guess I'd better taking another approach to him, maybe using
something from ASPN cookbook :-\
More information about the Python-list
mailing list