1577 votes

Conversion d'un nombre entier en chaîne de caractères en Python

Je veux convertir un nombre entier en chaîne de caractères en Python. Je suis en train de faire un typage en vain :

d = 15
d.str()

Quand j'essaie de le convertir en chaîne de caractères, il affiche une erreur du genre int n'a pas d'attribut appelé str .

1 votes

Pour ce type de conversions, une bonne solution consiste à utiliser un site tel que converttypes.com où vous pouvez voir toutes les conversions pour presque tous les langages de programmation.

2330voto

Bastien Léonard Points 18404
>>> str(10)
'10'
>>> int('10')
10

Liens vers la documentation :

La conversion en chaîne de caractères est effectuée avec la fonction intégrée str() qui, en fait, appelle la fonction __str__() de son paramètre.

152voto

Lasse V. Karlsen Points 148037

Essayez ça :

str(i)

69voto

Andrea Ambu Points 6479

Il n'y a pas de typecast ni de coercition de type en Python. Vous devez convertir votre variable de manière explicite.

Pour convertir un objet en chaîne de caractères, vous utilisez la fonction str() fonction. Elle fonctionne avec tout objet qui possède une méthode appelée __str__() défini. En effet

str(a)

est équivalent à

a.__str__()

Il en va de même si vous voulez convertir quelque chose en int, float, etc.

0 votes

Cette solution m'a aidé, je convertissais une chaîne alphanumérique en une chaîne numérique, en remplaçant les lettres par leurs valeurs ascii, cependant l'utilisation directe de la fonction str() ne fonctionnait pas, mais __str__() fonctionnait. Exemple (python2.7) ; s = "14.2.2.10a2" code non fonctionnel : print "".join([ str(ord(c)) if (c.isalpha()) else c for c in s ]) code fonctionnel : print "".join([ ord(c).__str__() if (c.isalpha()) else c for c in s ]) Sortie attendue : 14.2.2.10972

20voto

nik Points 8025

Pour gérer les entrées non entières :

number = raw_input()
try:
    value = int(number)
except ValueError:
    value = 0

20voto

Tarun Gupta Points 1369
a=2

vous pouvez utiliser str(a) qui vous donne un objet de type chaîne de caractères de int(2)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X