Titre RNCP Niveau 7

Maîtrisez pipelines, cloud & IA pour devenir Data Engineer opérationnel.

Devenez Data Engineer

DataScientist.fr

Formations

L'équipeLa plateforme
Offre entreprises

🇫🇷

Convertir les entiers Python en string - Tutoriel interactif
Python

Convertir les entiers Python en string - Tutoriel interactif

Romain DE LA SOUCHÈRE

Lead Developer, Expert Cloud et DevOps

Publié le 31 décembre 2024 · 4 min de lecture

En Python, la manipulation des entiers peut sembler simple, mais elle cache des nuances fascinantes. Que vous soyez novice ou programmeur aguerri, comprendre comment les entiers sont représentés et convertis entre différents types de données est crucial. Plongeons ensemble dans les mécanismes de stockage et de conversion des entiers en utilisant les types str et int, et découvrons comment jongler avec les systèmes de numération pour optimiser votre code Python. Préparez-vous à enrichir vos compétences et à explorer les subtilités des entiers en Python de manière ludique et instructive !

Représentation des entiers en Python

Un entier peut être stocké en utilisant différents types. Deux types de données Python possibles pour représenter un entier sont :
  1. str
  2. int
Par exemple, vous pouvez représenter un entier en utilisant un littéral de chaîne :
python
Ici, Python comprend que vous voulez stocker l'entier 110 en tant que chaîne. Vous pouvez faire de même avec le type de données entier :
python
Il est important de considérer ce que vous entendez spécifiquement par "110" et 110 dans les exemples ci-dessus. En tant qu'humain ayant utilisé le système de numération décimale toute votre vie, il peut être évident que vous entendez le nombre cent dix. Cependant, il existe plusieurs autres systèmes de numération, tels que le binaire et l'hexadécimal, qui utilisent différentes bases) pour représenter un entier.
Par exemple, vous pouvez représenter le nombre cent dix en binaire et en hexadécimal comme 1101110 et 6e respectivement.
Vous pouvez également représenter vos entiers avec d'autres systèmes de numération en Python en utilisant les types de données str et int :
python
Notez que binary et hexadecimal utilisent des préfixes pour identifier le système de numération. Tous les préfixes d'entier sont sous la forme 0?, où vous remplacez ? par un caractère se référant au système de numération :
  • b : binaire (base 2)
  • o : octal (base 8)
  • d : décimal (base 10)
  • x : hexadécimal (base 16)
Détail technique : Le préfixe n'est pas requis dans une représentation entière ou chaîne lorsqu'il peut être déduit.
int suppose que l'entier littéral est décimal :
python
La représentation en chaîne d'un entier est plus flexible car une chaîne contient des données textuelles arbitraires :
python
Chacune de ces chaînes représente le même entier.
Maintenant que vous avez quelques connaissances fondamentales sur la façon de représenter les entiers en utilisant str et int, vous allez apprendre comment convertir une chaîne Python en int.

Conversion d'une chaîne de caractère en int

Si vous avez un entier décimal représenté sous forme de chaîne et que vous souhaitez convertir cette chaîne Python en int, vous pouvez simplement passer la chaîne à int(), ce qui renvoie un entier décimal :
python
Par défaut, int() suppose que l'argument de la chaîne représente un entier décimal. Cependant, si vous passez une chaîne hexadécimale à int(), vous verrez une ValueError :
python
Le message d'erreur indique que la chaîne n'est pas un entier décimal valide.
Note :
Il est important de reconnaître la différence entre deux types de résultats échoués lors du passage d'une chaîne à int() :
  1. Erreur de syntaxe : Une ValueError se produira lorsque int() ne sait pas comment analyser la chaîne en utilisant la base fournie (10 par défaut).
  2. Erreur logique : int() sait comment analyser la chaîne, mais pas de la manière que vous attendiez.
Voici un exemple d'erreur logique :
python
Dans cet exemple, vous vouliez que le résultat soit 210, qui est la représentation décimale de la chaîne binaire. Malheureusement, parce que vous n'avez pas spécifié ce comportement, int() suppose que la chaîne est un entier décimal.
Une bonne précaution pour ce comportement est de toujours définir vos représentations de chaîne en utilisant des bases explicites :
python
Ici, vous obtenez une ValueError car int() ne sait pas comment analyser la chaîne binaire en tant qu'entier décimal.
Lorsque vous passez une chaîne à int(), vous pouvez spécifier le système de numération que vous utilisez pour représenter l'entier. La façon de spécifier le système de numération consiste à utiliser base :
python
Maintenant, int() comprend que vous passez une chaîne hexadécimale et que vous attendez un entier décimal.
Détail technique : L'argument que vous passez à base n'est pas limité à 2, 8, 10 et 16 :
python
Super ! Maintenant que vous êtes à l'aise avec les tenants et aboutissants de la conversion d'une chaîne Python en int, vous allez apprendre à faire l'opération inverse.

Conversion d'un int en chaîne de caractère

En Python, vous pouvez convertir un int en chaîne en utilisant str() :
python
Par défaut, str() se comporte comme int() en ce qu'il donne lieu à une représentation décimale :
python
Dans cet exemple, str() est assez intelligent pour interpréter le littéral binaire et le convertir en chaîne décimale.
Si vous voulez qu'une chaîne représente un entier dans un autre système de numération, vous utilisez une chaîne formatée, comme une f-string (en Python 3.6+), et une option qui spécifie la base :
python
str est un moyen flexible de représenter un entier dans divers systèmes de numération différents.

Conclusion

Félicitations ! Vous avez appris tant de choses sur les entiers et comment les représenter et les convertir entre les types de données chaînes et int en Python.
Dans ce tutoriel, vous avez appris :
  • Comment utiliser str et int pour stocker des entiers
  • Comment spécifier un système de numération explicite pour une représentation d'entier
  • Comment convertir une chaîne Python en int
  • Comment convertir un int Python en chaîne
Maintenant que vous en savez tant sur str et int, vous pouvez en apprendre davantage sur la représentation des types numériques en utilisant float(), hex(), oct(), et bin() !

Partager avec

💙 Merci d'avoir parcouru l'article jusqu'à la fin !

Romain DE LA SOUCHÈRE

Romain DE LA SOUCHÈRE - Lead Developer, Expert Cloud et DevOps

Ingénieur de formation avec plus de 11 ans d'expérience dans le développement back-end et le data engineering. Expert dans l’industrialisation des projets data dans le cloud.

» En savoir plus

Formations associés

Toutes nos formations

Préparez la certification PL‑300
Préparez la certification PL‑300
24 heures
Débutant
Garantie
Préparez la certification AZ-900
Préparez la certification AZ-900
10 heures
Débutant
Garantie
Préparez la certification DP‑700
Préparez la certification DP‑700
24 heures
Débutant
Garantie
Préparez la certification DP‑900
Préparez la certification DP‑900
10 heures
Débutant
Garantie

DataScientist.fr

By AXI Technologies

128 Rue de la Boétie,
75008, Paris, France

bonjour@datascientist.fr

+33 1 70 39 08 31

+33 6 86 99 34 78

© 2026 DataScientist.fr - AXI Technologies - Tous droits réservés