[Python-de] getter/setter für python Klassen?

Andreas Jung lists at andreas-jung.com
Mi Jul 18 10:45:56 UTC 2007



--On 18. Juli 2007 12:39:52 +0200 Bastian Venthur <venthur at debian.org> 
wrote:

> On 18.07.2007 12:09 schrieb Andreas Jung:
>> --On 18. Juli 2007 12:04:53 +0200 Bastian Venthur
>> <venthur at debian.org> wrote:
>>> ich hab irgendwo mal was über getter/setter für Python-Klassen
>>> gelesen. Irgendwie konnte man
>>>
>>>     instanz.variable = "foo"
>>>
>>> machen und intern wurde aber eine Setterfunktion aufgerufen. Sowas
>>> könnte ich jetzt gut gebrauchen. Weis jemand wie das nochmal ging, bzw.
>>> wo ich das nachlesen kann? Ich glaube es hatte irgendwas mit Decorators
>>> zu tun, mit denen hab ich aber bisher noch nie gearbeitet.
>>
>> "Python Properties" sind Deine magischen Suchbegriffe:
>
> Danke, properties hab ich gesucht. Da ich aber ziemlich viele
> Klassenvariablen habe würde diese Lösung meine Klasse allerdings
> unnötig aufblähen.

>
>
> Gibt es ne Möglichkeit bei jedem Schreibzugriff auf eine Klassenvariable
> eine bestimmte Funktion auszuführen?
>
>

__getattr__() überschreiben.

-aj
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 186 bytes
Beschreibung: nicht verfügbar
URL         : http://python.net/pipermail/python-de/attachments/20070718/bee2cbb4/attachment.pgp