Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Principes Fondamentaux de la Conversion de Types | Interactions Entre Types
Practice
Projects
Quizzes & Challenges
Quiz
Challenges
/
Types de Données en Python

bookPrincipes Fondamentaux de la Conversion de Types

Glissez pour afficher le menu

La conversion de type permet de passer d’un type de base Python à un autre afin que les valeurs puissent être comparées, calculées ou affichées.

Conversion en int

int(x) crée un entier.

  • À partir d’un int : retourne le même nombre ;
  • À partir d’un float : tronque vers zéro (par exemple, int(2.9) retourne 2, int(-2.9) retourne -2) ;
  • À partir d’une chaîne : la chaîne doit représenter un entier (les espaces et le signe sont acceptés). Python autorise également les soulignés dans les chiffres, comme "1_000" — mais uniquement si :
  • Le souligné est entre deux chiffres ;
  • Il n’est pas au début ou à la fin ("_100", "100_") ;
  • Il n’est pas répété ni adjacent à un point décimal ("1__000", "1_.5").

Conversions valides

1234567
age_input = " 42 " print(int(age_input)) # 42 print(int(2.9)) # 2 print(int(-2.9)) # -2 print(int("7")) # 7 print(int(" -15 ")) # -15 print(int("1_00_0")) # 1000
copy

Ceux-ci lèvent une ValueError

12
int("2.5") # ValueError - not an integer string int("42a") # ValueError
copy

Conversion en float

float(x) crée un nombre à virgule flottante.

  • Fonctionne pour les entiers et les chaînes en notation décimale ou scientifique ("3.14", "1e2", "5E-3") ;
  • Les virgules ne sont pas des points décimaux en Python ("2,5", "2.5") ;
  • Python autorise les underscores dans les chiffres des chaînes numériques, mais uniquement si :
  • L’underscore est entre des chiffres ;
  • Il n’est pas au début ou à la fin ("_3.14", "3.14_") ;
  • Il n’est pas adjacent au point décimal ni répété ("3_.14", "3.__14") ;
  • La notation scientifique doit également respecter ces règles ("1e_3").

Conversions valides

1234
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0 print(float("1_000.1_234")) # 1000.1234
copy

Ceux-ci génèrent une ValueError

1
float("2,5") # ValueError - use a dot, not a comma
copy

Conversion en str

str(x) crée une représentation sous forme de chaîne lisible par l’humain. Privilégier les f-strings lors de la construction de messages.

123
print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
copy

Conversion en bool

bool(x) suit les règles de véracité (truthiness) de Python.

  • Nombres : 0 correspond à False, tout autre nombre à True ;
  • Chaînes : "" (vide) correspond à False, toute chaîne non vide à True (même "0" et "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Erreurs à éviter

  • int("2.5") génère une ValueError – analyser d'abord avec float(), puis tronquer ou arrondir ;
  • Habitude locale : "2,5" est invalide – utiliser "2.5" ;
  • Surprise de véracité : bool("0") est True – comparer explicitement le contenu de la chaîne si nécessaire, par exemple s == "0".

1. Quel appel génère une ValueError ?

2. Choisissez l'énoncé correct.

question mark

Quel appel génère une ValueError ?

Select the correct answer

question mark

Choisissez l'énoncé correct.

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 4. Chapitre 1

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Section 4. Chapitre 1
some-alt