Was ist dadran eine statische Methode? :-/fr3sh hat geschrieben:Ich glaube ich habe mit der Hilfe eines Kollegen eben die gesuchte Lösung gefunden, eine Statische Klasse zu erzeugen. Ich komme aus der C# Ecke und mir sagt die Methode mit dem Modulen nicht wirklich zu.
Gefunden hier: http://stackoverflow.com/questions/5313 ... self-to-it
Beispiel:Aufruf wie folgt:Code: Alles auswählen
class Foo(object): @staticmethod def bar(): print "Static method called!"
ciaoCode: Alles auswählen
Foo.bar() >> Static method called!
statische Klasse in python
Ich hatte jetzt eher eine Erklärung zu statischen Funktion erwartet Aber ich glaube ich lese einfach mal die Doku zu @staticmethod
Ich denke bei statisch an etwas unabänderbares ich denke aber ich habe was falschen im Kopf
Ich bin halt nicht mit statischen Dingen in Programmiersprachen vertraut.
Edit 1 Mein Sprachstil in dem Post ist ja auch schlecht Ich Ich Ich Ich
Edit 2 Wenn ich meine Versuche jetzt richtig interpretiert habe, ist meine Vermutung der nicht änderbaren Funktion ja doch korrekt. Wäre über eine kleine Aufklärung sehr Glücklich.
Ich denke bei statisch an etwas unabänderbares ich denke aber ich habe was falschen im Kopf
Ich bin halt nicht mit statischen Dingen in Programmiersprachen vertraut.
Edit 1 Mein Sprachstil in dem Post ist ja auch schlecht Ich Ich Ich Ich
Edit 2 Wenn ich meine Versuche jetzt richtig interpretiert habe, ist meine Vermutung der nicht änderbaren Funktion ja doch korrekt. Wäre über eine kleine Aufklärung sehr Glücklich.
Statisch bedeutet in diesem Kontext, dass du keine Instanz vom Typ "foo" benötigst. Normalerweise würdest du die Methode so aufrufen:
Mittels "staticmethod" vereinfacht sich das ganze:
An der Signatur von bar kannst du auch erkennen, dass du nun kein Zugriff mehr auf die Instanz hast.
Code: Alles auswählen
foo = Foo()
foo.bar()
#mit
class Foo(object):
def bar(self):
pass
Code: Alles auswählen
Foo.bar()
#mit
class Foo(object):
def bar():
pass
Das Leben ist wie ein Tennisball.