
On Jul 19, 2013, at 4:10 PM, Tamer Higazi wrote:
Hallo Frank!
Hier, ich habe dir ein kleines Sample geschrieben:
Frank hat @classmethod schon korrekt verwandt - seine Frage war nicht, wie er eine classmethod (oder staticmethod) macht, sondern wie die mit *anderen* Methoden interagiert. Womit sich also eigentlich dein (und auch so manch anderer Post hier) eruebrigen.
class MeineKlasse:
Variable = 'Hallo'
def MeineFunk(ds): print 'Hallo %s, ich bin eine statische Methode!' % (ds) print MeineKlasse.Variable
MeineFunk = staticmethod(MeineFunk)
Python 2.4 ist 2004 - also knapp vor 10 Jahren - erschienen. Seit dem benutzt man eigentlich Dekoratoren fuer sowas. Und staticmethod eigentlich so gut wie nie.
Man sieht an deiner eigenen Implementierung, warum:
@classmethod def MeineFunk(cls, ds): print cls.Variable
Womit sogar ueberladung moeglich waere.
Hier zum nachlesen: http://openbook.galileocomputing.de/python/python_kapitel_12_001.htm
Und das erklaert's - das galileo open book ist ueblicherweise eher als schlecht zu bezeichnen. BlackJack hat mal schoen aufgeschrieben, warum.
http://blog.marc.rintsch.de/2012/11/18/python_openbook.html
Diez