[Python-Dev] properties with decorators (was: code blocks using 'for' loops and generators)

Josiah Carlson jcarlson at uci.edu
Thu Mar 17 18:01:27 CET 2005

Nick Coghlan <ncoghlan at iinet.net.au> wrote:
> Josiah Carlson wrote:
> > Samuele Pedroni <pedronis at strakt.com> wrote:
> [snip]
> >>well, I think some people desire a more streamlined way of writing code
> >>like:
> >>
> >>def f(...)
> >>...
> >>def g(...)
> >>...
> >>x = h(...,f,g)
> >>
> >>[property, setting up callbacks etc are cases of this]
> > 
> > 
> > 
> > I think properties are the most used case where this kind of thing would
> > be nice.  Though the only thing that I've ever had a gripe with
> > properties is that I didn't like the trailing property() call - which is
> > why I wrote a property helper decorator (a use can be seen in [1]).  But
> > my needs are small, so maybe this kind of thing isn't sufficient for
> > those who write hundreds of properties.
> [snip]
> I'm still trying to decide if the following is an elegant solution to defining 
> properties, or a horrible abuse of function decorators:

[snip example]

The only issue is that you are left with a closure afterwards, no big
deal, unless you've got hundreds of thousands of examples of this.  I
like your method anyways.

 - Josiah

More information about the Python-Dev mailing list