2017-09-12 4 views
1

Ich bin sehr neu zu Python. Ich möchte ein Skript schreiben, in dem, wenn ich keinen Wert an ein Argument übergeben, es Wert für dieses Argument fragen sollte. Wenn es übergeben wird, sollte es diesen Wert auswählen und fortfahren. Das Übergeben dieser Werte erfolgt über die Befehlszeile. ich versuchte unten Code und Python wirft Fehler sagen Variable ist nicht initialisiert.Parameter Übergabe an Python3.x-Skript von der Kommandozeile

if (fileName == None) 
    fileName == "C:\\filename" 
print(fileName) 

Kommandozeilenaufruf für das Skript ausführen: - script.py "C: \ Dateiname"

Stack-Trace: - if (NO_ERROR == None) ^ Syntax: ungültige Syntax

+0

kleine Frage, kann ich Namen Wert-Paare verwenden, auch für die gleichen, Ex: - script.py filename = "C: \ Dateiname" wie in der Kommandozeile. Das ist meine eigentliche Anforderung. Ich kann dies in Javascript erreichen. Ich möchte den gleichen Weg auch in Python verwenden. ist es möglich? – Srikanth

Antwort

0

sys-Modul viele Möglichkeiten zu pla bietet y mit Befehlszeilenargumenten. unter Beispiel könnte für Sie hilfreich sein.

import sys 
#storing the argument in string 
st=" ".join(sys.argv) 
#splitting the list to get the file name and storing it in list 
var=st.split('=') 
if len(sys.argv)<2: 
    print "Enter Argument\n" 
else: 
    print 'Argument found' 
    print var[1] 
+0

kleine Frage, kann ich Name Wert Paare auch für die gleichen, Beispiel: - script.py fileName = "C: \ Dateiname" wie in der Befehlszeile. Das ist meine eigentliche Anforderung. Ich kann dies in Javascript erreichen. Ich möchte den gleichen Weg auch in Python verwenden. ist es möglich? – Srikanth

+0

Überprüfen Sie es jetzt, das sollte funktionieren –

1

Sie einen Doppelpunkt am Ende der if-Anweisung fehlt

if (fileName == None): 
    fileName = "C:\\filename" 
print(fileName) 
+0

Sorry, bemerkt, dass die 2. Zeile auch syntaktisch nicht richtig ist. Die Zuweisung verwendet nur ein einziges '='. – ShreyasG

+1

auch Klammern in 1 Zeile sind redundant – JJAACCEeEKK

Verwandte Themen