Почему приведенный ниже код дает такой вывод?Я ожидал другой вывод
код:
def run(n,IC):
n+=1
print(n,IC)
if n==4:
return n
IC.append(n)
run(n,IC)
print("reached here",n,IC)
run(0,[])
он дает вывод:
1 []
2 [1]
3 [1, 2]
4 [1, 2, 3]
reached here 3 [1, 2, 3]
reached here 2 [1, 2, 3]
reached here 1 [1, 2, 3]
но я ожидал:
2 [1]
3 [1, 2]
4 [1, 2, 3]
reached here 3 [1, 2, 3]
reached here 2 [1, 2]
reached here 1 [1]