Correction d'un littéral non valide pour Int() avec une erreur de base 10 en Python

Haider Ali 12 avril 2022
Correction d'un littéral non valide pour Int() avec une erreur de base 10 en Python

En Python, lors de la conversion d’un type de données à un autre, nous obtenons parfois l’erreur invalid literal for int() with base 10. Nous apprendrons comment résoudre cette erreur et éviter de l’obtenir. Plongeons dedans.

Correction de l’erreur invalid literal for int() with base 10 en Python

Cette erreur se produit lors de la conversion d’une structure de données en une autre. Par exemple, si nous convertissons une valeur de chaîne en un entier comme celui-ci, nous obtenons cette erreur car la base d’un entier est 10, ce qui diffère des autres structures de données.

# String Value
S1 = "Hello"
# Converting it into integer
number = int(S1)

Le code ci-dessus est incorrect, car nous essayons de convertir une valeur de chaîne Hello en un entier qui n’a pas de sens. Nous ne pouvons pas convertir cette valeur de chaîne en un entier.

Jetez un oeil à un autre exemple.

# Other String
S2 = "2.8"
# Converting Float string value in Int
number = int(S2)

Dans l’exemple de code ci-dessus, la chaîne contient une valeur flottante. Cela donnera à nouveau l’erreur car cela revient à convertir une valeur de chaîne en un entier avec une base de 10. Cependant, il s’agit d’une chaîne flottante ; il existe un moyen de convertir cette chaîne en un entier.

# Other String
S2 = "2.8"

# Correct Way to Convert it
# Converting it in to float
F_number = float(S2)
print(F_number)


# Converting Float into int
int_number = int(F_number)
print(int_number)

Production :

2.8
2

Tout d’abord, nous allons le convertir en un type de données flottant. Ensuite, nous pouvons facilement convertir ce type de données flottant en un entier de base 10.

Si une chaîne est une chaîne int, ce qui signifie qu’elle a une valeur entière, elle n’aura aucun problème à la convertir directement en un type de données entier.

# String
S2 = "3"

# Converting string to Int
number = int(S2)
print(number)

Production :

3
Auteur: Haider Ali
Haider Ali avatar Haider Ali avatar

Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.

LinkedIn

Article connexe - Python Error

Article connexe - Python Conversion