Ich versuche, ein Skript zu debuggen, das Befehlszeilenargumente als Eingabe verwendet. Argumente sind Textdateien im selben Verzeichnis. Das Skript ruft Dateinamen aus der Liste sys.argv ab. Mein Problem ist, dass ich das Skript nicht mit Argumenten in pycharm starten kann.
Ich habe versucht, Argumente in das Feld "Skriptparameter" im Menü "Ausführen"> "Konfiguration bearbeiten" wie folgt einzugeben:
-s'file1.txt', -s'file2.txt'
Aber es hat nicht funktioniert. Wie starte ich mein Skript mit Argumenten?
PS Ich bin auf Ubuntu
script parameters
Script parameters
Option.Für andere, die sich fragen, wie sie zu diesem Fenster kommen sollen. Hier ist wie:
Sie können darauf zugreifen, indem Sie auf
Select Run/Debug Configurations
(links von ) klicken und zu gehenEdit Configurations
. Ein GIF sorgte für Klarheit.quelle
Auf PyCharm Community oder Professional Edition 2019.1+ :
file2.txt file3.txt
oder--myFlag myArg --anotherFlag mySecondArg
).quelle
Zusätzlich zu Jims Antwort (leider nicht genügend Wiederholungspunkte, um einen Kommentar abzugeben) wollte ich nur darauf hinweisen, dass bei den in PyCharm angegebenen Argumenten keine Sonderzeichen maskiert sind, im Gegensatz zu dem, was Sie in der Befehlszeile tun würden. Während Sie in der Befehlszeile Folgendes tun würden:
Der PyCharm-Parameter wäre:
"/media/paul/New Volume/Users/paul/Documents/spinmaster/*.png"
quelle
Beachten Sie, dass es aus unbekannten Gründen nicht möglich ist, Befehlszeilenargumente in der PyCharm Edu-Version hinzuzufügen. Dies ist nur in Professional- und Community-Editionen möglich.
quelle
Der erste Parameter ist der Name des Skripts, das Sie ausführen möchten. Ab dem zweiten Parameter sind dies die Parameter, die Sie über Ihre Befehlszeile übergeben möchten. Unten ist ein Testskript:
from sys import argv script, first, second = argv print "Script is ",script print "first is ",first print "second is ",second
Und so übergeben Sie die Eingabeparameter: 'Pfad zu Ihrem Skript', 'Erster Parameter', 'Zweiter Parameter'
Nehmen wir an, der Pfad zu Ihrem Skript lautet /home/my_folder/test.py. Die Ausgabe lautet wie folgt:
Script is /home/my_folder/test.py first is First Parameter second is Second Parameter
Ich hoffe, das hilft, da ich einige Zeit gebraucht habe, um herauszufinden, dass die Eingabeparameter durch Kommas getrennt sind.
quelle
Fügen Sie Folgendes oben in Ihre Python-Datei ein.
import sys sys.argv = [ __file__, 'arg1', 'arg2' ]
Jetzt können Sie einfach mit der rechten Maustaste auf das Python-Skript klicken.
quelle
Ich glaube, es ist sogar in der Edu-Version enthalten. Klicken Sie einfach mit der rechten Maustaste auf den durchgehend grünen Pfeil (Ausführen) und wählen Sie "Parameter hinzufügen".
quelle
Es funktioniert in der Edu-Version für mich. Ich musste in den Interpreter-Optionen keine Option -s angeben.
quelle