Back to questions
Junior — Middle
61
Каким образом можно различить переменную, принадлежащую классу, от переменной, связанной с конкретным объектом?
Answer from AI
sobes.tech AI
В Python переменные, принадлежащие классу, называются атрибутами класса и объявляются внутри тела класса, но вне методов. Они общие для всех экземпляров класса. Переменные, связанные с конкретным объектом, называются атрибутами экземпляра и обычно создаются внутри методов (например, в __init__) с использованием self.
Пример:
class MyClass:
class_var = 10 # атрибут класса
def __init__(self, value):
self.instance_var = value # атрибут экземпляра
obj1 = MyClass(1)
obj2 = MyClass(2)
print(MyClass.class_var) # 10
print(obj1.class_var) # 10
print(obj1.instance_var) # 1
print(obj2.instance_var) # 2
Таким образом, атрибут класса доступен через имя класса и через экземпляры, но общий для всех, а атрибут экземпляра уникален для каждого объекта.