Dividir o inteiro em dígitos em Python

Vaibhhav Khetarpal 30 janeiro 2023
  1. Use a compreensão de lista para dividir um número inteiro em dígitos em Python
  2. Use as funções math.ceil() e math.log() para dividir um inteiro em dígitos em Python
  3. Use as funções map() e str.split() para dividir um inteiro em dígitos em Python
  4. Use um for Loop para dividir um número inteiro em dígitos em Python
Dividir o inteiro em dígitos em Python

Este tutorial discutirá diferentes métodos para dividir um número inteiro em dígitos no Python.

Use a compreensão de lista para dividir um número inteiro em dígitos em Python

A compreensão de listas é uma maneira muito mais curta e elegante de criar listas que devem ser formadas com base em determinados valores de uma lista já existente.

Neste método, as funções str() e int() também são usadas junto com a compreensão de lista para dividir o inteiro em dígitos. As funções str() e int() são usadas para converter um número em uma string e, em seguida, em um inteiro, respectivamente.

O código a seguir usa compreensão de lista para dividir um número inteiro em dígitos no Python.

num = 13579
x = [int(a) for a in str(num)]
print(x)

Resultado:

[1, 3, 5, 7, 9]

O número num é primeiro convertido em uma string usando str() no código acima. Em seguida, é usada a compreensão de lista, que divide a string em dígitos discretos. Finalmente, os dígitos são convertidos de volta para um inteiro usando a função int().

Use as funções math.ceil() e math.log() para dividir um inteiro em dígitos em Python

A operação de dividir o inteiro em dígitos no Python pode ser realizada sem converter o número em string primeiro. Além disso, esse método é cerca de duas vezes mais rápido do que convertê-lo em uma string primeiro.

A função math.ceil() arredonda um número para um inteiro. A função math.log() fornece o logaritmo natural de um número. Para usar ambas as funções, devemos importar a biblioteca math.

O módulo math pode ser definido como um módulo sempre acessível e padrão em Python. Ele fornece acesso às funções fundamentais da biblioteca C.

O código a seguir usa a compreensão de lista, funções math.ceil() e math.log() para dividir um inteiro em dígitos em Python.

import math

n = 13579
x = [(n // (10 ** i)) % 10 for i in range(math.ceil(math.log(n, 10)) - 1, -1, -1)]
print(x)

Resultado:

[1, 3, 5, 7, 9]

Use as funções map() e str.split() para dividir um inteiro em dígitos em Python

A função map() implementa uma função declarada para cada item em um iterável. O item é então consignado como um parâmetro para a função.

O método split(), como o nome sugere, é usado para dividir uma string em uma lista. Ele tem uma sintaxe básica e contém dois parâmetros, separator e maxsplit.

O número já precisa estar no formato de string para que esse método possa ser usado.

O código a seguir usa as funções map() e str.split() para dividir um inteiro em dígitos no Python.

str1 = "1 3 5 7 9"
list1 = str1.split()
map_object = map(int, list1)

listofint = list(map_object)
print(listofint)

Resultado:

[1, 3, 5, 7, 9]

Aqui, usamos o método str.split() para dividir o número fornecido no formato de string em uma lista de strings contendo cada número. Em seguida, a função map() é usada, que é utilizada para gerar um objeto de mapa que converte cada string em um inteiro. Finalmente, list(mapping) é usado para criar uma lista do objeto de mapa.

Use um for Loop para dividir um número inteiro em dígitos em Python

Neste método, usamos um loop e executamos a técnica de fatiamento até o número especificado de dígitos (A=1 neste caso) e, finalmente, usamos a função int() para conversão em um inteiro.

O código a seguir usa int() + loop + slice para dividir um inteiro em dígitos no Python.

str1 = "13579"
# initializing substring
A = 1
# create a result list
result = []
for i in range(0, len(str1), A):
    # convert to int, after the slicing process
    result.append(int(str1[i : i + A]))

print("The resultant list : " + str(result))

Resultado:

The resultant list : [1, 3, 5, 7, 9]
Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Artigo relacionado - Python Integer

Artigo relacionado - Python String