Salve a tutti,
ho da poco scoperto "classmethod", e mi stanno parecchio simpatico. Ho
però trovato un piccolo ostacolo riguardo all'ereditarietà. Per i metodi
"normali", posso fare il classico:
class Base(object):
def fai_qualcosa(self):
...
return result
class Derivata(Base):
def fai_qualcosa(self):
primo_passo = Base.fai_qualcosa( self )
...
return result
Ma per i classmethod non trovo qualcosa di ugualmente comodo ed
elegante, nel senso che
class Base(object):
@classmethod
def fai_qualcosa(cls):
...
return result
class Derivata(Base):
@classmethod
def fai_qualcosa(cls):
primo_passo = Base.fai_qualcosa( cls )
...
return result
chiaramente protesta ("Base.fai_qualcosa" prende un solo argomento, che
è per l'appunto sempre "Base"). Quindi l'unica alternativa che mi viene
in mente è dare a "fai_qualcosa" un argomento opzionale "cls_effettiva".
C'è qualcosa di meglio che mi sfugge?
grazie, ciao
Pietro
_______________________________________________
Python mailing list
[email protected]
http://lists.python.it/mailman/listinfo/python