Os ciclos while são muito práticos quando trabalhamos com os dígitos de um número. Se tivermos um inteiro, como 1486743242498701, podemos processar cada um dos seus dígitos começando do fim, um por um. Em cada iteração, podemos obter o resto da divisão por 10 para extrair o último dígito e, em seguida, dividir o número por 10. Isto remove o último dígito do número:
n = 1486743242498701
while n != 0:
print('O último dígito:', n % 10, end=' => ')
n //= 10
print('n resultante:', n)
O último dígito: 1 => n resultante: 148674324249870
O último dígito: 0 => n resultante: 14867432424987
O último dígito: 7 => n resultante: 1486743242498
O último dígito: 8 => n resultante: 148674324249
O último dígito: 9 => n resultante: 14867432424
O último dígito: 4 => n resultante: 1486743242
O último dígito: 2 => n resultante: 148674324
O último dígito: 4 => n resultante: 14867432
O último dígito: 2 => n resultante: 1486743
O último dígito: 3 => n resultante: 148674
O último dígito: 4 => n resultante: 14867
O último dígito: 7 => n resultante: 1486
O último dígito: 6 => n resultante: 148
O último dígito: 8 => n resultante: 14
O último dígito: 4 => n resultante: 1
O último dígito: 1 => n resultante: 0
Desafio
Dado um inteiro, a sua tarefa é imprimir os seus dígitos separados por um espaço.