Встречается на собеседованиях • сегодня
Какие методы нужно переопределить, чтобы объект себя вел как словарь
Для того чтобы объект вёл себя как словарь, необходимо переопределить следующие методы:
__getitem__(self, key)— доступ по ключу:obj[key]__setitem__(self, key, value)— установка значения:obj[key] = value__delitem__(self, key)— удаление элемента:del obj[key]__contains__(self, key)— проверка наличия ключа:key in obj__iter__(self)— итерация по ключам:for key in obj__len__(self)— получение длины:len(obj)
Пример минимальной реализации:
python
class DictLike:
def __init__(self):
self._data = {}
def __getitem__(self, key):
return self._data[key]
def __setitem__(self, key, value):
self._data[key] = value
def __delitem__(self, key):
del self._data[key]
def __contains__(self, key):
return key in self._data
def __iter__(self):
return iter(self._data)
def __len__(self):
return len(self._data)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы