From 348b7c8304b29d5cef5e1cf9530c509d663ec433 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Fri, 30 Jun 2006 18:47:56 +0000 Subject: [PATCH] Document decorator usage of property. --- Doc/lib/libfuncs.tex | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/Doc/lib/libfuncs.tex b/Doc/lib/libfuncs.tex index 7cfdfbb0f83..54b25959c42 100644 --- a/Doc/lib/libfuncs.tex +++ b/Doc/lib/libfuncs.tex @@ -789,7 +789,22 @@ class C(object): If given, \var{doc} will be the docstring of the property attribute. Otherwise, the property will copy \var{fget}'s docstring (if it - exists). + exists). This makes it possible to create read-only properties + easily using \function{property} as a decorator: + +\begin{verbatim} +class Parrot(object): + def __init__(self): + self.__voltage = 100000 + + @property + def voltage(self): + """Get the current voltage.""" + return self.__voltage +\end{verbatim} + + turns the \method{voltage} method into a "getter" for a read-only attribute + with the same name. \versionadded{2.2} \versionchanged[Use \var{fget}'s docstring if no \var{doc} given]{2.5}