statische Variablen in PYTHON

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
dobberph
User
Beiträge: 23
Registriert: Mittwoch 8. November 2006, 09:36

Hi ihr,

ich bin Neuling in PYTHON und versuche gerade in Datei A in der Klasse B steht, eine statische Variable einzuführen und schaff es nicht...

Code: Alles auswählen

statische_variable = 0

class B(ObjectList, HTMLObject):
    def getHTMLCode(self):
        ...
        print statische_variable
        statische_variable += 1
        return statische_variable
Ziel: Alle Instanzen von B sollen auf die gleiche Variable zugreifen können und diese ändern können.

Vielleicht muss die statische_variable auch innerhalb der Klasse stehen, keine Ahnung.

Vielen Dank im Voraus,
DerTobi
Das einzige, was leicht ist, ist verzweifeln...
BlackJack

Die Vermutung war gar nicht schlecht, Du suchst ein Klassenattribut:

Code: Alles auswählen

class B(ObjectList, HTMLObject):
    klassen_attribut = 0

    def getHTMLCode(self):
        ...
        print B.klassen_attribut
        B.klassen_attribut += 1
        return B.klassen_attribut
dobberph
User
Beiträge: 23
Registriert: Mittwoch 8. November 2006, 09:36

achso, ähnlich wie Java,
Danke
Das einzige, was leicht ist, ist verzweifeln...
Joghurt
User
Beiträge: 877
Registriert: Dienstag 15. Februar 2005, 15:07

dobberph hat geschrieben:achso, ähnlich wie Java
Wo wir gerade dabei sind: Für Python gelten andere Style-Guidelines als für Java. Siehe PEP 8.

Auch wenn es in deinem Falle jetzt nicht zutrifft, getter und setter der Art (getMemberVariableA) nutzt man in Python nicht.
Antworten