Comment convertir un entier en chaîne en Python

Femme afro-américaine concentrée en train de réfléchir tout en codant des données sur un ordinateur de bureau.

Le langage de programmation Python vous propose différentes manières de convertir un entier ou un autre type de nombre en chaîne.

Crédit d'image : skynesher/E+/GettyImages

Le langage de programmation Python vous propose différentes manières de convertir un entier ou un autre type de nombre en chaîne. Vous pouvez le faire avec la fonction "str", ou la fonction "unicode" si vous travaillez en Python 2 et souhaitez une chaîne Unicode, ou avec des chaînes de format. Si vous voulez aller dans l'autre sens, il est également possible de convertir une chaîne contenant un entier en cet entier.

Convertir avec la fonction Str

La fonction Python intégrée "str" peut convertir un entier, un nombre à virgule flottante ou de nombreux autres types de données en une chaîne lisible et imprimable. Pour l'utiliser, il suffit de l'appeler sur un numéro autre chose, comme dans chaîne (5), ce qui vous donnera la chaîne "5." Si vous souhaitez l'appeler sur une variable contenant un nombre, faites-le de la même manière, par exemple chaîne (x).

Vidéo du jour

Si vous utilisez Python 2.7 ou une version antérieure, vous pouvez également utiliser le "unicode" fonction pour générer un Unicode chaîne de la plupart des types de données, y compris les entiers. Unicode est une norme internationale pour le stockage des caractères de nombreuses langues différentes, ainsi que des caractères spéciaux tels que les symboles du zodiaque et les emoji. Appel unicode (5) vous donnera la chaîne Unicode u'5'. Cette fonction n'est pas nécessaire dans Python 3, où les chaînes sont Unicode par défaut.

Utilisation d'une chaîne de format

Une autre option pour convertir un entier en chaîne consiste à utiliser un chaîne de format. Une chaîne de format est simplement une chaîne de texte avec des espaces réservés pour l'endroit où vous souhaitez placer d'autres données, chacune avec la forme « {} ». Appelez la chaîne de format format méthode avec des arguments dans l'ordre pour chaque espace réservé, comme "Le nombre {} est supérieur à {}".format (6,2).

Ceci est particulièrement utile si vous souhaitez insérer des chiffres ou d'autres données dans des chaînes plus grandes, mais vous pouvez également utiliser une chaîne de format avec un seul espace réservé si vous préférez, comme "{}".

Vous pouvez également faire référence aux arguments dans une chaîne de format dans l'ordre numérique en commençant par "{0}" ou par nom si vous utilisez des arguments nommés. Par exemple, l'expression de format "Le nombre {0} est supérieur à {1}, mais {0} est inférieur à {largest_num}".format (6,5,largest_num=7) donnera la chaîne "Le nombre 6 est supérieur à 5, mais 6 est inférieur à 7.

Les chaînes de format fonctionnent dans Python 2 et Python 3.

Chaîne Python en fonction entière

Dans certains cas, vous voudrez peut-être aller dans l'autre sens, de la chaîne Python à l'entier. Pour ce faire, appelez la fonction intégrée "int" sur une chaîne contenant la représentation écrite d'un entier, telle que entier("2"), ce qui donne 2. Si la chaîne contient autre chose qu'un entier, cela échouera et générera une exception. Cela est vrai même s'il y a un entier au début de la chaîne ou à l'intérieur, bien que vous puissiez prendre une sous-chaîne de la chaîne ou utiliser une expression régulière pour trouver l'entier.

De même, vous pouvez demander à Python de convertir une chaîne en un double, ce qui signifie ce qu'on appelle un nombre à virgule flottante double précision, en utilisant le flotter fonction. Par exemple, float("3.2") = 3.2. Gardez à l'esprit que les nombres à virgule flottante ont une précision limitée, vous pouvez donc ne pas obtenir exactement le nombre écrit dans la chaîne. Utilisez le décimal class si vous avez besoin d'une précision arbitraire. Lisez correctement les définitions de float et de decimal pour voir ce qui convient le mieux à vos besoins.

Options Python Float to Int

Parfois, vous souhaiterez peut-être convertir un nombre à virgule flottante en un entier. S'il s'agit déjà d'un entier, vous pouvez utiliser la fonction int, donc entier (3.0) = 3. S'il ne s'agit pas déjà d'un nombre entier, la fonction supprimera ce qui se trouve après la virgule décimale, en arrondissant le nombre vers le bas.

Vous pouvez également utiliser la fonction intégrée tour fonction pour arrondir à l'entier le plus proche ou math.ceil pour arrondir les nombres à l'entier le plus élevé suivant.