Встречается на 1% собеседований по Python
Какие есть альтернативы object.get
В Python есть несколько способов безопасного доступа к атрибутам словаря или объекта, помимо object.get():
dict.setdefault(key, default)- возвращает значение ключа, если он есть, иначе устанавливает ключ с default значением и возвращает его:
python
d = {'a': 1}
val = d.setdefault('b', 2) # val = 2, d = {'a': 1, 'b': 2}collections.defaultdict- словарь с дефолтным значением для отсутствующих ключей:
python
from collections import defaultdict
dd = defaultdict(int)
val = dd['missing'] # 0- Оператор
:=(walrus) + проверка:
python
if (val := d.get('key')) is not None:
# обработка valtry/exceptдля обработки KeyError:
python
try:
val = d['missing']
except KeyError:
val = Nonehasattr()для объектов:
python
if hasattr(obj, 'attr'):
val = obj.attrВыбор зависит от контекста - нужна ли запись дефолтного значения, обработка исключений или просто проверка.

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