Встречается на собеседованиях • сегодня
Расскажи про __slots__
__slots__ — это механизм в Python, позволяющий явно указать атрибуты класса, что экономит память и ускоряет доступ к ним.
Преимущества:
- Уменьшает потребление памяти, так как исключает
__dict__для хранения атрибутов. - Ускоряет доступ к атрибутам (на ~20-30%).
Ограничения:
- Нельзя динамически добавлять новые атрибуты.
- Наследование требует аккуратности: если родитель имеет
__slots__, а потомок — нет, у потомка будет__dict__.
Пример:
python
class Person:
__slots__ = ('name', 'age') # Разрешенные атрибуты
p = Person()
p.name = "Alice" # OK
p.age = 30 # OK
p.salary = 5000 # AttributeError (не в __slots__)Используйте __slots__ для классов с фиксированным набором атрибутов, особенно в memory-sensitive приложениях.

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