Встречается на собеседованиях • сегодня
Как отличить переменную класса от переменной экземпляра
В Python переменные класса объявляются внутри класса, но вне методов, а переменные экземпляра — внутри методов (обычно в __init__).
Пример:
python
class MyClass:
class_var = "Это переменная класса" # Общая для всех экземпляров
text
def __init__(self, instance_var):
self.instance_var = instance_var # Уникальна для каждого экземпляраtext
**Ключевые отличия:**
1. **Доступ:**
- `MyClass.class_var` — доступ через класс
- `obj.instance_var` — доступ через экземпляр
2. **Изменения:**
- Изменение `class_var` отразится на всех экземплярах
- Изменение `instance_var` затронет только конкретный экземпляр
**Проверка:**
```python
obj = MyClass("Значение")
print(hasattr(obj, 'class_var')) # True (наследуется)
print(hasattr(obj, 'instance_var')) # True
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы