#Вопросы_с_собеседования Что будет выведено после второго в | Python Learning
#Вопросы_с_собеседования
Что будет выведено после второго вызова append() в коде выше?
Ответ: Когда значением по умолчанию для аргумента функции является выражение, оно вычисляется только один раз, а не всегда при вызове функции. Таким образом, после того как аргумент list был инициализирован в пустой массив, последующие вызовы функции без аргументов продолжат использовать тот же самый массив, что был инициализирован изначально.
>>> append() # при первом вызове без аргумента используется значение по умолчанию [] [0] >>> append() # но затем... [0, 1] >>> append() # последовательные вызовы расширяют список по умолчанию [0, 1, 2] >>> append() # и так продолжается... [0, 1, 2, 3].