Heim  >  Artikel  >  Backend-Entwicklung  >  Gibt es Mitgliedsvariablen in Python?

Gibt es Mitgliedsvariablen in Python?

(*-*)浩
(*-*)浩Original
2019-06-20 10:18:212579Durchsuche

Es gibt zwei Haupttypen von Variablen, die in Python-Klassen verwendet werden: Klassenvariablen und Mitgliedsvariablen. Klassenvariablen sind allen instanziierten Objekten der Klasse gemeinsam, während Mitgliedsvariablen für jedes instanziierte Objekt eindeutig sind.

Gibt es Mitgliedsvariablen in Python?

Das Folgende wird anhand von zwei kleinen Programmen erklärt. (Empfohlenes Lernen: Python-Video-Tutorial)

class A(object):
    def __init__(self):
        #aa为成员变量
        self.aa = 10

    @staticmethod
    def test(self):
        self.aa += -1
if __name__ == '__main__':
    x = A()
    y = A()
    #调用x
    x.test(x)
    print x.aa #输出9
    y.test(y)
    print x.aa #输出9
    print y.aa #输出9

Wir können es im Destruktor als self.aa erhalten, aber offensichtlich erscheint aa zu diesem Zeitpunkt in Form einer Mitgliedsvariablen. Die zu diesem Zeitpunkt daran vorgenommenen Änderungen können nur auf das Objekt selbst angewendet werden und wirken sich nicht auf andere Klassenobjekte aus. Ich denke, dieses Design sollte besser mit der Definition eines Destruktors übereinstimmen, da es sonst für andere Objekte besonders gefährlich ist, wenn ein Objekt den Gültigkeitsbereich verlässt.

Weitere technische Artikel zum Thema Python finden Sie in der Spalte Python-Tutorial, um mehr darüber zu erfahren!

Das obige ist der detaillierte Inhalt vonGibt es Mitgliedsvariablen in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Ist Python ein Crawler?Nächster Artikel:Ist Python ein Crawler?