[PIPython] Dati statici
Lethalman
lethalman
Ven 25 Feb 2005 15:00:33 CET
Luca Fabbri wrote:
> Salve a tutti.
> Provengo dal mondo di programmazione Java.
> Vorrei capire in Python come si definiscono dati (variabili, oggetti)
> statici all'interno di una classe.
> Per i metodi ho trovato staticmethod ma non riesco a trovare
> l'informazione per i dati comuni.
>
> Grazie.
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> La mailing list di python.it
> python a lists.python.it
> http://lists.python.it/cgi-bin/mailman/listinfo/python
Leggi il cookbook su www.italianpug.org, c'e' un tip che riguarda la
funzione property().
Praticamente puoi specificare delle funzioni per leggere e scrivere la
variabile, quindi potresti creare una funzione che di scrittura della
variabile tipo questa, e quindi renderla costante poiche' non scrivibile:
>>> class costanti(object):
... def __init__(self):
... self.__var = "costante"
... def getVar(self): return self.__var
... var = property(fget=getVar)
...
>>> const = costanti()
>>> print const.var
costante
>>> const.var = "prova"
Traceback (most recent call last):
File "<stdin>", line 1, in ?
AttributeError: can't set attribute
>>> del const.var
Traceback (most recent call last):
File "<stdin>", line 1, in ?
AttributeError: can't delete attribute
Oppure usare __setattr__ che forse diventa piu' veloce, ma questo sta a te.
--
www.iosn.it * Amministratore Italian Open Source Network
www.italianpug.org * Italian Python User Group Founder
www.fyrebird.net * Fyrebird Hosting Provider - Technical Department
More information about the Python
mailing list