Встречается на 2% собеседований по Python
Для чего нужен slots
__slots__ в Python используется для оптимизации памяти, ограничивая набор атрибутов, которые могут быть у экземпляра класса. Это полезно, когда нужно уменьшить потребление памяти, особенно при создании множества экземпляров.
Преимущества:
- Экономит память, так как исключает
__dict__для хранения атрибутов. - Ускоряет доступ к атрибутам (меньше накладных расходов).
Ограничения:
- Нельзя динамически добавлять новые атрибуты.
- Наследование требует аккуратного использования.
Пример:
python
class User:
__slots__ = ('name', 'age') # Разрешенные атрибуты
user = User()
user.name = "Alice" # OK
user.age = 30 # OK
user.email = "a@b.c" # AttributeError (не в __slots__)Используйте __slots__ для классов с фиксированным набором атрибутов и большим количеством экземпляров.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы