Сбер вакансии Backend
Сбер вакансии Backend
Сбер вакансии Backend
Написать пост
  • Разработка

Задачка по Python

Что выведет этот код? Ответы и объяснения пишите в комментариях! 👇

			def func(x, y=[]): 
    y.append(x) 
    return y 

print(func(1)) 
print(func(2, [])) 
print(func(3))
		

💡 Подсказка. Этот пример показывает, как Python обрабатывает изменяемые аргументы по умолчанию. Задумайтесь, что происходит с y между вызовами функции.

Почему это важно? Понимание такого поведения поможет вам избежать неожиданных багов и сделать ваш код более предсказуемым.

Давайте обсудим лучшие практики для работы с изменяемыми аргументами по умолчанию и как избежать подобных сюрпризов.

Делитесь своими мыслями и ответами в комментариях!

1 комментарий Здесь каждый может высказать своё мнение. Сохраняйте уважение, потому что это взаимно.
  • Valery Kaliuta

    по логике должно быть:
    [1]
    [2]
    [3]

    но на практике:
    [1]
    [2]
    [1, 3]
    какого хрена спрашивается?