Здраствуйте!
Есть следующий Пайтон-код
bar = []
def foo(bar=[]):
bar.append(1)
return bar
print(foo())
print(foo())
print(foo())
output:
[1]
[1, 1]
[1, 1, 1]
Почему при использовании (bar=[]) при вызове функции сохраняются предыдущие значения?
А вот в глобальной переменной ничего не меняется? Тоесть
print(bar)
output:
[]
Как это обьяснить и где о таких нюансах можно почитать? Спасибо!