Entendendo a recursão em Python
Eu estou realmente tentando envolver meu cérebro em torno de como funciona a recursão e entender algoritmos recursivos. Por exemplo, o código abaixo retorna 120 quando eu entro em 5, desculpe minha ignorância, e só não estou vendo o porquê?
def fact(n):
if n == 0:
return 1
else:
return n * fact(n-1)
answer = int (raw_input('Enter some number: '))
print fact(answer)