Встречается на собеседованиях • сегодня
Как правильно решается проблема изменяемых значений по умолчанию в Python функции
В Python аргументы по умолчанию вычисляются один раз при создании функции, а не при каждом вызове. Это приводит к неожиданному поведению при использовании изменяемых объектов (списки, словари и т.д.).
Правильное решение - использовать None в качестве значения по умолчанию и создавать новый изменяемый объект внутри функции:
python
def append_to(element, to=None):
if to is None:
to = []
to.append(element)
return toТакой подход гарантирует, что при каждом вызове без аргумента to будет создаваться новый список. Это стандартный идиоматический способ решения проблемы в Python.

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