Ctrl K
Python · Junior · Теория

Представьте функцию add с параметром items, у которого значение по умолчанию — пустой список. Функция добавляет элемент в этот список и возвращает его. Что произойдёт, если вызвать её два раза подряд, не передавая второй аргумент?

~4 мин голосом

Как подойти

Проверяют, понимает ли кандидат, когда Python вычисляет значения параметров по умолчанию и почему изменяемый объект в дефолте становится общим для всех вызовов. Плюс умеет ли он это исправить идиоматично.

Встречал этот вопрос на настоящем собесе?
Ответов0
Средний балл—
Сильных—
Тренировали0
Темы
Похожие вопросыВ сервисе есть функция def add_tag(tag, tags=[]), и после нескольких вызовов в результатах начинают появляться чужие теги. Что происходит и как это исправить? MiddleЧто происходит, когда вы переопределяете __eq__ у своего класса, и как это связано с __hash__? Как бы вы сделали объект, который можно безопасно класть в set и использовать как ключ словаря? SeniorЧем поверхностное копирование отличается от глубокого в Python? Когда эта разница имеет значение? JuniorВы переопределили __eq__ у класса Money, и при попытке положить объект в set получили TypeError: unhashable type. Почему так произошло и как правильно реализовать равенство и хеширование? MiddleРасскажите, как Python ищет атрибут при обращении obj.attr. Какое место в этом занимают дескрипторы и почему property работает именно так? Senior

Ответь голосом

Интервьюер задаст этот вопрос и послушает. Думай вслух, проси подсказку, если нужно. Закончил — пауза или «Я ответил», через минуту здесь балл и какие пункты закрыты.

Войти, чтобы ответить

Лучше в наушниках · ~4 мин