2013-08-21 10 views
15

Ich möchte den Dateinamen 'main.txt' in den Betreff dafür, dass ich Dateinamen über die Befehlszeile übergeben. aber sowie verketten ich eine feste Zeichenfolge und eine Variable in Python

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 
+0

Es ist fast immer eine gute Idee, die Stack-Trace zu integrieren - es ist da, um Ihnen beim Debuggen zu helfen! – Brionius

Antwort

26

Ich vermute, dass Sie dies tun sollten dabei Fehler bekommen:

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

Versuch mal

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

Der Operator + in Python außer Kraft gesetzt wird, Strings verketten .

3

Wenn Sie zwei Strings hinzufügen müssen, müssen Sie verwenden, um den '+' Operator

daher

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

und auch müssen Sie sys in dem Anfang importieren

als

import sys 

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

für ganzzahligen Typ ...

variable=" 10" 
print (variable) 
print("This is the Test File "+str(variable)) 
Verwandte Themen