Diviser un entier en chiffres en Python

Vaibhhav Khetarpal 30 janvier 2023
  1. Utiliser la compréhension de liste pour diviser un entier en chiffres en Python
  2. Utilisez les fonctions math.ceil() et math.log() pour diviser un entier en chiffres en Python
  3. Utilisez les fonctions map() et str.split() pour diviser un entier en chiffres en Python
  4. Utiliser une boucle for pour diviser un entier en chiffres en Python
Diviser un entier en chiffres en Python

Ce tutoriel abordera différentes méthodes pour diviser un entier en chiffres en Python.

Utiliser la compréhension de liste pour diviser un entier en chiffres en Python

La compréhension de liste est un moyen beaucoup plus court et gracieux de créer des listes qui doivent être formées sur la base de valeurs données d’une liste déjà existante.

Dans cette méthode, les fonctions str() et int() sont également utilisées avec la compréhension de liste pour diviser l’entier en chiffres. Les fonctions str() et int() sont utilisées pour convertir un nombre en chaîne puis en entier respectivement.

Le code suivant utilise la compréhension de liste pour diviser un entier en chiffres en Python.

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

Production:

[1, 3, 5, 7, 9]

Le nombre num est d’abord converti en une chaîne en utilisant str() dans le code ci-dessus. Ensuite, la compréhension de liste est utilisée, ce qui divise la chaîne en chiffres discrets. Enfin, les chiffres sont reconvertis en nombre entier à l’aide de la fonction int().

Utilisez les fonctions math.ceil() et math.log() pour diviser un entier en chiffres en Python

L’opération consistant à diviser l’entier en chiffres en Python peut être effectuée sans convertir d’abord le nombre en chaîne. De plus, cette méthode est environ deux fois plus rapide que de la convertir d’abord en chaîne.

La fonction math.ceil() arrondit un nombre à un entier supérieur. La fonction math.log() fournit le logarithme népérien d’un nombre. Pour utiliser ces deux fonctions, nous devons importer la bibliothèque math.

Le module math peut être défini comme un module toujours accessible et standard en Python. Il donne accès aux fonctions fondamentales de la bibliothèque C.

Le code suivant utilise la compréhension de liste, les fonctions math.ceil() et math.log() pour diviser un entier en chiffres en 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)

Production:

[1, 3, 5, 7, 9]

Utilisez les fonctions map() et str.split() pour diviser un entier en chiffres en Python

La fonction map() implémente une fonction déclarée pour chaque élément d’un itérable. L’article est alors consigné en paramètre de la fonction.

La méthode split(), comme son nom l’indique, est utilisée pour diviser une chaîne en une liste. Il a une syntaxe de base et contient deux paramètres, separator et le maxsplit.

Le nombre doit déjà être au format chaîne pour que cette méthode puisse être utilisée.

Le code suivant utilise les fonctions map() et str.split() pour diviser un entier en chiffres en Python.

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

listofint = list(map_object)
print(listofint)

Production:

[1, 3, 5, 7, 9]

Ici, nous avons utilisé la méthode str.split() pour diviser le nombre donné au format chaîne en une liste de chaînes contenant chaque nombre. Ensuite, la fonction map() est utilisée, qui est utilisée pour générer un objet carte qui convertit chaque chaîne en un entier. Enfin, list(mapping) est utilisé pour créer une liste à partir de l’objet map.

Utiliser une boucle for pour diviser un entier en chiffres en Python

Dans cette méthode, nous utilisons une boucle et effectuons la technique de découpage jusqu’au nombre de chiffres spécifié (A=1 dans ce cas) et enfin, utilisons la fonction int() pour la conversion en un entier.

Le code suivant utilise le int()+boucle+tranche pour diviser un entier en chiffres en 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))

Production:

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

Article connexe - Python Integer

Article connexe - Python String