Contrairement à de nombreux autres langages de programmation, Python ne transforme pas implicitement des entiers (ou des flottants) en chaînes lorsque vous les concaténez en chaînes.
Heureusement, Python a une fonction intégrée pratique str()
qui convertira l'argument passé en un format de chaîne.
La mauvaise façon de convertir une chaîne en un entier en Python
Les programmeurs provenant d'autres langages de programmation peuvent tenter de faire la concaténation de chaînes suivante, ce qui produira une erreur:
age = 18 string = "Hello, I am " + age + " years old"
Vous pouvez exécuter ce code sur repl.it.
L'erreur qui apparaît est:
Traceback (most recent call last): File "python", line 3, in TypeError: must be str, not int
Ici, TypeError: must be str, not int
indique que l'entier doit d'abord être converti en chaîne avant de pouvoir être concaténé.
La bonne façon de convertir une chaîne en un entier en Python
Voici un exemple de concaténation simple:
age = 18 print("Hello, I am " + str(age) + " years old") # Output # Hello, I am 18 years old
Vous pouvez exécuter ce code sur repl.it.
Voici comment imprimer en 1 2 3 4 5 6 7 8 9 10
utilisant une seule chaîne:
result = "" for i in range(1, 11): result += str(i) + " " print(result) # Output # 1 2 3 4 5 6 7 8 9 10
Vous pouvez exécuter le code sur repl.it.
Voici une explication ligne par ligne du fonctionnement du code ci-dessus:
- Tout d'abord, une variable «résultat» est affectée à une chaîne vide.
- La boucle for est utilisée pour parcourir une liste de nombres.
- Cette liste de nombres est générée à l'aide de la fonction de plage.
- donc range (1,11) va générer une liste de nombres de 1 à 10.
- À chaque itération de la boucle for, cette variable «i» va prendre des valeurs de 1 à 10.
- Lors de la première itération lorsque la variable i = 1, puis la variable [résultat = résultat + str (i) + «(caractère espace)»], str (i) convertit le «i» qui est une valeur entière en une valeur de chaîne.
- Puisque i = 1, à la première itération, le résultat est finalement = 1.
- Et le même processus se poursuit jusqu'à ce que i = 10 et finalement après le résultat de la dernière itération = 1 2 3 4 5 6 7 8 9 10.
- Par conséquent, lorsque nous imprimons enfin le résultat après la boucle for, la sortie sur la console est «1 2 3 4 5 6 7 8 9 10».
J'espère que vous avez trouvé cela utile. Bon codage.