web-dev-qa-db-fra.com

comment utiliser concaténer une chaîne fixe et une variable dans Python

Je veux inclure le nom de fichier 'main.txt' dans le sujet pour lequel je passe le nom du fichier à partir de la ligne de commande. mais obtenir une erreur en le faisant

python sample.py main.txt #running python with argument 

msg['Subject'] = "Auto Hella Restart Report "sys.argv[1]  #line where i am using that passed argument
25
Shivam Agrawal

Je suppose que vous vouliez faire ceci:

msg['Subject'] = "Auto Hella Restart Report " + sys.argv[1]
# To concatenate strings in python, use       ^ 
40
Brionius

Essayer:

msg['Subject'] = "Auto Hella Restart Report " + sys.argv[1]

L'opérateur + Est écrasé dans python pour concaténer des chaînes.

7
DotPi

Si vous devez ajouter deux chaînes, vous devez utiliser l'opérateur '+'

par conséquent

msg['Subject'] = your string + sys.argv[1]

et aussi vous devez importer sys au début

comme

import sys

msg['Subject'] = "Auto Hella Restart Report " + sys.argv[1]
4
Anto
variable=" Hello..."  
print (variable)  
print("This is the Test File "+variable)  

pour le type entier ...

variable="  10"  
print (variable)  
print("This is the Test File "+str(variable))  
2
Smith John

Avec python 3.6+:

msg['Subject'] = f"Auto Hella Restart Report {sys.argv[1]}"

0
Doryx