#собесы #python #senior Вопросы, которые могут задать на собеседовании Senior Python Developer. Проверьте себя без помощи поисковиков!
❓Что такое __slots__ и зачем он нужен?
Пример кода:
class MyClass: __slots__ = ['x', 'y']
obj = MyClass() obj.x = 10 obj.y = 20 # obj.z = 30 # Ошибка: нельзя добавить новый атрибут
❗️__slots__ — это атрибут класса, который ограничивает набор атрибутов экземпляра. Он используется для экономии памяти, так как предотвращает создание словаря __dict__ для каждого экземпляра. Однако это ограничивает гибкость, например, добавление новых атрибутов динамически.
#собесы #python #senior Вопросы, которые могут задать на собеседовании Senior Python Developer. Проверьте себя без помощи поисковиков!
❓Что такое __slots__ и зачем он нужен?
Пример кода:
class MyClass: __slots__ = ['x', 'y']
obj = MyClass() obj.x = 10 obj.y = 20 # obj.z = 30 # Ошибка: нельзя добавить новый атрибут
❗️__slots__ — это атрибут класса, который ограничивает набор атрибутов экземпляра. Он используется для экономии памяти, так как предотвращает создание словаря __dict__ для каждого экземпляра. Однако это ограничивает гибкость, например, добавление новых атрибутов динамически.