247 votes

Comment puis-je imprimer une variable et une chaîne sur la même ligne en Python ?

J'utilise Python pour calculer le nombre d'enfants qui naîtraient en 5 ans si un enfant naissait toutes les 7 secondes. Le problème se situe sur ma dernière ligne. Comment faire pour qu'une variable fonctionne lorsque j'imprime du texte de part et d'autre de celle-ci ?

Voici mon code :

currentPop = 312032486
oneYear = 365
hours = 24
minutes = 60
seconds = 60

# seconds in a single day
secondsInDay = hours * minutes * seconds

# seconds in a year
secondsInYear = secondsInDay * oneYear

fiveYears = secondsInYear * 5

#Seconds in 5 years
print fiveYears

# fiveYears in seconds, divided by 7 seconds
births = fiveYears // 7

print "If there was a birth every 7 seconds, there would be: " births "births"

2voto

Amber Points 159296

Vous pouvez utiliser formatage des chaînes pour le faire :

print "If there was a birth every 7 seconds, there would be: %d births" % births

ou vous pouvez donner print plusieurs arguments, et il les séparera automatiquement par un espace :

print "If there was a birth every 7 seconds, there would be:", births, "births"

2voto

Siddharth Dash Points 23

Utiliser Formatage des chaînes de caractères

print("If there was a birth every 7 seconds, there would be: {} births".format(births))
 # Will replace "{}" with births

si vous faites un projet de jouets, utilisez-le :

print('If there was a birth every 7 seconds, there would be:' births'births) 

ou

print('If there was a birth every 7 seconds, there would be: %d births' %(births))
# Will replace %d with births

1voto

Faisal Ahmed Points 23

Utilisez simplement , (virgule) entre les deux.

Voir ce code pour une meilleure compréhension :

# Weight converter pounds to kg

weight_lbs = input("Enter your weight in pounds: ")

weight_kg = 0.45 * int(weight_lbs)

print("You are ", weight_kg, " kg")

0voto

Debug255 Points 113

J'ai copié et collé votre script dans un fichier .py. Je l'ai exécuté tel quel avec Python 2.7.10 et j'ai reçu la même erreur de syntaxe. J'ai également essayé le script dans Python 3.5 et j'ai reçu la sortie suivante :

File "print_strings_on_same_line.py", line 16
print fiveYears
              ^
SyntaxError: Missing parentheses in call to 'print'

Ensuite, j'ai modifié la dernière ligne où il imprime le nombre de naissances comme suit :

currentPop = 312032486
oneYear = 365
hours = 24
minutes = 60
seconds = 60

# seconds in a single day
secondsInDay = hours * minutes * seconds

# seconds in a year
secondsInYear = secondsInDay * oneYear

fiveYears = secondsInYear * 5

#Seconds in 5 years
print fiveYears

# fiveYears in seconds, divided by 7 seconds
births = fiveYears // 7

print "If there was a birth every 7 seconds, there would be: " + str(births) + " births"

La sortie était (Python 2.7.10) :

157680000
If there was a birth every 7 seconds, there would be: 22525714 births

J'espère que cela vous aidera.

-1voto

Qohelet Points 78

Légèrement différent : Utilisation de Python 3 et de print plusieurs dans la même ligne :

print("~~Create new DB:",argv[5],"; with user:",argv[3],"; and Password:",argv[4]," ~~")

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