eu fiz diferente usando o while ficou da seguinte forma:
n = int(input('''Digite um número para
calcular seu fatorial: '''))
resultado = n
cont = n
print(f'Canculando {n}! =', end = ' ')
while cont >=1:
if cont == 1:
print(cont, '=', end =' ')
cont -=1
else:
print(cont, 'x', end =' ')
cont -= 1
resultado = resultado * cont
print(resultado)
e tambem fiz com for e ficou da seqguinte maneira:
n = int(input('Digite um número para calcular seu fatorial: '))
print(f'calculando {n}! = ', end='')
resultado = n
for c in range(resultado, 0 , -1):
if c == 1:
print(c, end=' = ')
resultado *= c
else:
print(c, end=' x ')
resultado *= (c-1)
print(resultado)