156 votes

Concaténation de chaînes de caractères et d'entiers en Python

En Python, disons que vous avez

s = "string"
i = 0
print s + i

vous donnera une erreur, donc vous écrivez

print s + str(i)

pour ne pas avoir d'erreur.

Je pense que c'est une façon assez maladroite de gérer la concaténation d'int et de string.

Même Java n'a pas besoin d'un casting explicite vers String pour faire ce genre de concaténation. Existe-t-il une meilleure façon de réaliser ce type de concaténation, c'est-à-dire sans casting explicite en Python ?

1voto

Will Points 1

Vous pouvez utiliser l'an f-chaîne aussi !

s = "string"
i = 95
print(f"{s}{i}")

0voto

Supposons que vous vouliez concaténer une chaîne de caractères et un nombre entier dans une situation comme celle-ci :

for i in range(1, 11):
   string = "string" + i

Et vous obtenez une erreur de type ou de concaténation.

La meilleure façon de procéder est de faire quelque chose comme ceci :

for i in range(1, 11):
   print("string", i)

Vous obtiendrez ainsi des résultats concaténés, comme la chaîne 1, la chaîne 2, la chaîne 3, etc.

-1voto

Si vous voulez seulement imprimer, vous pouvez le faire :

print(s, i)

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