Android

Comment convertir des chaînes en entiers en python

Transformer Une Liste Python En chaine de Caracteres avec la Methode Join

Transformer Une Liste Python En chaine de Caracteres avec la Methode Join

Table des matières:

Anonim

Tous les types de données en Python, y compris les entiers et les chaînes, sont des objets. Souvent, lors de l'écriture de code Python, vous devrez convertir un type de données en un autre. Par exemple, pour effectuer une opération mathématique sur un nombre représenté sous forme de chaîne, il doit être converti en entier.

Dans ce tutoriel, nous allons vous montrer comment convertir une chaîne Python en entier.

Fonction Python int()

La fonction int() intégrée renvoie un objet entier décimal à partir d'un nombre ou d'une chaîne donnée. Il prend la forme suivante:

int(x, base=10)

La fonction `accepte deux arguments:

  • x - Chaîne ou nombre à convertir en entier. base - Il représente le système numérique du premier argument. Sa valeur peut être 0 et 2–36. Si aucune base n'est donnée, la valeur par défaut est 10 (entier décimal).

Habituellement, les entiers sont exprimés en notation hexadécimale (base 16), décimale (base 10), octale (base 8) ou binaire (base 2).

Si l'argument donné ne peut pas être représenté sous forme d'entier, la fonction ValueError une exception ValueError .

Conversion d'une chaîne Python en entier

En Python, une «chaîne» est une liste de caractères qui est déclarée à l'aide de guillemets simples ( ' ), doubles ( " ) ou triples ( """ ).

Si une variable qui ne contient que des nombres est déclarée à l'aide de guillemets, son type de données est défini sur String. Prenons l'exemple suivant:

days = "23" type(days)

La fonction type() nous montre que days est un objet String.

Essayons de faire une opération mathématique sur la variable:

print(days+5)

Python TypeError une erreur d'exception TypeError car nous ne pouvons pas effectuer un calcul d'addition avec une chaîne et un entier:

Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects

Pour convertir une représentation sous forme de chaîne d'un entier décimal en entier, passez la chaîne à la fonction int() , qui retourne un entier décimal:

days = "23" days_int = int(days) type(days_int)

print(days_int+5)

28

Si le nombre comprend des virgules, marquant des milliers, des millions, etc., vous devez supprimer les virgules avant de passer le nombre à la fonction int() :

total = "1, 000, 000" int(total.replace(", ", ""))

1000000

Lors de la conversion de chaînes qui représentent des entiers dans différents systèmes numériques, assurez-vous d'utiliser la bonne base .

Par exemple, dans le système hexadécimal, le nombre 54732 est représenté par D5CF . Pour le convertir en un nombre décimal, vous devez utiliser la base 16:

int("D5CF", 16)

54735

Si vous passez la chaîne D5CF à la fonction int() sans définir de base, elle ValueError une exception ValueError :

int("D5CF")

Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF' Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF' Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF'

Conclusion

En Python, vous pouvez convertir une chaîne en entier à l'aide de la fonction int() .

python