Der Inhalt dieses Artikels befasst sich mit den objektorientierten Instanzattributen und Klassenattributen von Python. Er hat einen gewissen Referenzwert.
Da Python eine dynamische Sprache ist Mit der Klasse können Sie eine Instanz erstellen und beliebige Eigenschaften binden.
Die Möglichkeit, Attribute an eine Instanz zu binden, erfolgt über Instanzvariablen oder über die Variable self:
class Student(object): def __init__(self,name): self.name = name s = Student('jeff') print(s.name) #jeff
Wenn wir ein Klassenattribut definieren, wird dieses Attribut zwar von allen klassifiziert, aber Auf die Klasse kann auf alle Instanzen von
zugegriffen werden. Testen wir es:
>>> class Student(object): ... name = 'Student' ... >>> s = Student() >>> print(s.name) Student >>> print(Student.name) Student >>> s.name = 'jeff' >>> >>> print(s.name) jeff >>> print(Student.name) Student >>> del s.name >>> print(s.name) Student >>> print(Student.name) Student
Wie Sie dem obigen Beispiel entnehmen können, verwenden Sie beim Schreiben eines Programms niemals denselben Namen für Instanzattribute und Klassenattribute, da Instanzattribute mit demselben Namen Klassenanpassungen blockieren . Attribut, aber wenn Sie das Stärkeattribut löschen und denselben Namen erneut verwenden, wird auf das Klassenattribut zugegriffen
Verwandte Empfehlungen:
Python objektorientiertes Abrufen von Objektinformationen
Python objektorientierte Vererbung und Polymorphismus
Das obige ist der detaillierte Inhalt vonObjektorientierte Instanzattribute und Klassenattribute von Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!