Встречается на собеседованиях • сегодня

Какие магические методы используешь часто в Python

Наиболее часто используемые магические методы:

  1. __init__ - инициализация объекта
python
class User:
    def __init__(self, name):
        self.name = name
  1. __str__ и __repr__ - строковое представление объекта
python
def __str__(self):
    return f"User: {self.name}"

def __repr__(self):
    return f"User('{self.name}')"
  1. __len__ - получение длины объекта
python
def __len__(self):
    return len(self.items)
  1. __getitem__, __setitem__ - доступ по индексу/ключу
python
def __getitem__(self, key):
    return self.data[key]
  1. __eq__, __lt__ и др. - сравнение объектов
python
def __eq__(self, other):
    return self.id == other.id
  1. __call__ - вызов объекта как функции
python
def __call__(self, x):
    return x * 2
  1. __enter__ и __exit__ - менеджеры контекста
python
def __enter__(self):
    self.open_connection()
    
def __exit__(self, exc_type, exc_val, exc_tb):
    self.close_connection()

Эти методы позволяют создавать интуитивно понятные и удобные в использовании классы, интегрируя их в Python-экосистему.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы