Édition du: 29/07/2025 |
INDEX |
Python – Comment se lancer et initiation |
||
PROGRAMMATION PYTHON – CHIFFRES Comment extraire les chiffres d'un nombre, les
retourner ... Palindrome. Retournement. |
||
|
Sommaire de cette page >>>
Quantité de chiffres >>>
Extraction des chiffres >>>
Retournement d'un nombre >>>
Test palindrome et repdigit >>>
Somme des chiffres d'un nombre |
Débutants Glossaire |
Voir absolument Mon espace de travail
en Python
Chiffres Simple
demande de la longueur (len) du nombre
interprété comme une chaine de caractère (str). |
n = 123456 l = len(str(n)) print(n, "a", l,"chiffres") |
123456 a 6 chiffres |
|
Liste des chiffres et Ensemble des chiffres (set) |
n = 1233336645 Ch = [int(c) for c in str(n)] print(Ch) print(set(Ch)) |
[1, 2, 3, 3, 3, 3, 6, 6, 4, 5] {1, 2, 3, 4, 5, 6} |
||
Sous forme d'une fonction |
def CH(n): return [int(c) for c in str(n)] print(CH(123456)) |
[1, 2, 3, 4, 5, 6] |
||
Isoler les chiffres et reformer le nombre |
n = 37852 Ch = [int(d) for d in str(n)] print(Ch) n = int(''.join(map(str, Ch))) print(n) |
[3, 7, 8, 5, 2] 37852 |
||
Voir Extraction
des chiffres en Maple / Chiffres
Retournement d'un nombre Cette
méthode :
|
def RET(n): return int(str(n)[::-1]) print(RET(12345)) |
54321 |
|||
Permutation des k premiers chiffres avec les k
derniers Notez
que l'on vérifie que le
nombre est suffisamment grand par rapport à k |
def ECH(n, k): s = str(n) if k < len(s)//2: raise ValueError("impossible") debut = s[:k] milieu = s[k:-k] fin = s[-k:] return int(fin + milieu + debut) print(ECH(123456789, 4)) |
678951234 |
|||
Voir Nombres
retournés
Palindrome |
def PAL(n): s = str(n) return s == s[::-1] n = 12344321 print(n, PAL(n)) print(n+10,PAL(n+10)) |
12344321 True 12344331 False |
|
Repdigit |
def REP(n): s = str(n) return all(c == s[0] for c in s) n = 5555 print(n, REP(n)) print(n+10,REP(n+10)) |
5555 True 5565 False |
|
Voir Palindrome
/ Repdigit
Somme des éléments d'une liste |
|
|
|
Somme des chiffres d'un nombre |
n = 134217728000000000 s = sum(int(c) for c in str(n)) print(s) |
35 |
|
Plus compact |
n = 78815638671875 print(sum(map(int, str(n)))) |
80 |
|
Somme des chiffres d'un nombre comme fonction (Antislash = on reste sur la même instruction) |
def SD(n: int) -> int: return sum(int(d) \ for d in str(abs(n))) for n in range(123, 130): print(n,SD(n)) |
123 6 124 7 125 8 126 9 127 10 128 11 129 12 |
|
Somme des carrés Attention la limite haute n'est pas comprise. |
|
||
Retour |
|
Suite |
|
Voir |
|
Site |
|
Cette page |