Maison  >  Article  >  développement back-end  >  Attributs d'instance et attributs de classe orientés objet Python

Attributs d'instance et attributs de classe orientés objet Python

不言
不言original
2018-04-14 10:32:361262parcourir

Le contenu de cet article concerne les attributs d'instance orientés objet et les attributs de classe de Python. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer

Puisque Python est un langage dynamique, selon. la classe Vous pouvez créer une instance et lier toutes les propriétés.

La façon de lier des attributs à une instance est via des variables d'instance, ou via la variable self :

class Student(object):
    def __init__(self,name):
        self.name = name

s = Student('jeff')
print(s.name)
#jeff

Lorsque nous définissons un attribut de classe, bien que cet attribut soit classé par tous, mais la classe Toutes les instances de

sont accessibles. Testons-le :

>>> 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

Comme vous pouvez le voir dans l'exemple ci-dessus, lors de l'écriture d'un programme, n'utilisez jamais le même nom pour les attributs d'instance et les attributs de classe, car les attributs d'instance portant le même nom bloqueront les ajustements de classe. . Attribut, mais lorsque vous supprimez l'attribut force et utilisez à nouveau le même nom, l'attribut accessible sera l'attribut de classe

Recommandations associées :

Obtention d'informations sur l'objet Python orienté objet

🎜 >

Héritage et polymorphisme orientés objet Python

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn