Aide je ne peux pas obtenir que cela fonctionne, j'essaye de mettre la variable age dans la chaîne mais cela ne chargera pas la variable correctement.
Voici mon code:
import random
import sys
import os
age = 17
print(age)
quote = "You are" age "years old!"
Donne cette erreur:
File "C:/Users/----/PycharmProjects/hellophyton/hellophyton.py", line 9
quote = "You are" age "years old!"
^
SyntaxError: invalid syntax
Process finished with exit code 1
Vous devriez utiliser un formateur de chaîne ici, ou une concaténation. Pour la concaténation, vous devrez convertir une int
en une string
. Vous ne pouvez pas concaténer les ints et les chaînes ensemble.
Cela déclenchera l'erreur suivante si vous essayez:
TypeError: unsupported operand type(s) for +: 'int' and 'str'
Formatage:
quote = "You are %d years old" % age
quote = "You are {} years old".format(age)
Concaténation (à sens unique)
quote = "You are " + str(age) + " years old"
Edit : Comme noté par J.F. Sebastian dans le (s) commentaire (s), nous pouvons également procéder comme suit
En Python 3.6:
f"You are {age} years old"
Les versions précédentes de Python:
"You are {age} years old".format(**vars())
C'est une façon de le faire:
>>> age = 17
>>> quote = "You are %d years old!" % age
>>> quote
'You are 17 years old!'
>>>
Vous devez utiliser le signe +
pour l'insérer dans la chaîne comme ceci:
quote = "You are " + age + " years old!"
Vous pouvez en savoir plus sur les autres moyens de le faire sur La documentation de Python sur les chaînes .