Principes Fondamentaux de la Conversion de Types
La conversion de type permet de passer d’un type de base Python à un autre afin de comparer, calculer ou afficher des valeurs. Ce chapitre explique comment convertir en toute sécurité et met en avant les erreurs fréquentes des débutants.
Conversion vers 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)retourne2,int(-2.9)retourne-2) ; - À partir d’une chaîne : la chaîne doit représenter un entier (espaces et signe optionnels acceptés).
Conversions valides
12345print(int(7)) # 7 print(int(2.9)) # 2 - truncates toward zero print(int(-2.9)) # -2 print(int("42")) # 42 print(int(" -15 ")) # -15
Ceux-ci lèvent une ValueError
12int("2.5") # ValueError - not an integer string int("42a") # ValueError
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 ;
- Les virgules ne sont pas des points décimaux en Python.
Conversions valides
123print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0
Ceux-ci génèrent une ValueError
1float("2,5") # ValueError - use a dot, not a comma
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.
12345print(str(42)) # "42" print(str(3.5)) # "3.5" name, score = "Ada", 98 msg = f"{name} scored {score}" print(msg)
Conversion en bool
bool(x) suit les règles de véracité de Python.
- Nombres :
0correspond àFalse, tout autre nombre correspond àTrue; - Chaînes :
""(vide) correspond àFalse, toute chaîne non vide correspond àTrue(même"0"et"False").
12345print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
Erreurs à éviter
int("2.5")génère uneValueError– analyser d'abord avecfloat(), puis tronquer ou arrondir ;- Habitude locale :
"2,5"est invalide – utiliser"2.5"; - Traits de soulignement dans les chaînes d'entrée :
"1_000"est invalide – supprimer d'abord les traits de soulignement :"1_000".replace("_", ""); - Surprise de véracité :
bool("0")donneTrue– comparer explicitement le contenu de la chaîne si nécessaire, par exemples == "0".
1. Que produit chaque ligne ?
2. Quel appel déclenche une ValueError ?
3. Sélectionner l'énoncé correct.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Can you explain more about how type conversion works in Python?
What are some common errors beginners make with type conversion?
Can you show examples of converting between other types, like lists or dictionaries?
Awesome!
Completion rate improved to 5
Principes 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 de comparer, calculer ou afficher des valeurs. Ce chapitre explique comment convertir en toute sécurité et met en avant les erreurs fréquentes des débutants.
Conversion vers 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)retourne2,int(-2.9)retourne-2) ; - À partir d’une chaîne : la chaîne doit représenter un entier (espaces et signe optionnels acceptés).
Conversions valides
12345print(int(7)) # 7 print(int(2.9)) # 2 - truncates toward zero print(int(-2.9)) # -2 print(int("42")) # 42 print(int(" -15 ")) # -15
Ceux-ci lèvent une ValueError
12int("2.5") # ValueError - not an integer string int("42a") # ValueError
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 ;
- Les virgules ne sont pas des points décimaux en Python.
Conversions valides
123print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0
Ceux-ci génèrent une ValueError
1float("2,5") # ValueError - use a dot, not a comma
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.
12345print(str(42)) # "42" print(str(3.5)) # "3.5" name, score = "Ada", 98 msg = f"{name} scored {score}" print(msg)
Conversion en bool
bool(x) suit les règles de véracité de Python.
- Nombres :
0correspond àFalse, tout autre nombre correspond àTrue; - Chaînes :
""(vide) correspond àFalse, toute chaîne non vide correspond àTrue(même"0"et"False").
12345print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
Erreurs à éviter
int("2.5")génère uneValueError– analyser d'abord avecfloat(), puis tronquer ou arrondir ;- Habitude locale :
"2,5"est invalide – utiliser"2.5"; - Traits de soulignement dans les chaînes d'entrée :
"1_000"est invalide – supprimer d'abord les traits de soulignement :"1_000".replace("_", ""); - Surprise de véracité :
bool("0")donneTrue– comparer explicitement le contenu de la chaîne si nécessaire, par exemples == "0".
1. Que produit chaque ligne ?
2. Quel appel déclenche une ValueError ?
3. Sélectionner l'énoncé correct.
Merci pour vos commentaires !