Benutzereingaben und Befehlszeilenargumente
Wie habe ich ein Python-Skript, das a) kann Benutzereingaben akzeptieren und wie mache ich es b) lesen in Argumente, wenn von der Kommandozeile ausgeführt?
502
3
Um Benutzereingaben zu lesen, können Sie das Modul
cmd
zur einfachen Erstellung eines Mini-Befehlszeileninterpreters (mit Hilfetexten und Autovervollständigung) undraw_input
(input
für Python 3+) zum Lesen einer Textzeile vom Benutzer verwenden.Kommandozeileneingaben stehen in
sys.argv
. Versuchen Sie dies in Ihrem Skript:Es gibt zwei Module zum Parsen von Kommandozeilenoptionen:
optparse
(seit Python 2.7 veraltet, verwenden Sie stattdessenargparse
) undgetopt
. Wenn Sie nur Dateien in Ihr Skript eingeben wollen, sollten Sie die Macht vonfileinput
nutzen.Die Python Library Reference ist Ihr Freund.
Oder für Python 3:
Der beste Weg zur Verarbeitung von Kommandozeilenargumenten ist das Modul
argparse
.Verwenden Sie
raw_input()
, um Benutzereingaben zu erhalten. Wenn Sie das Modulreadline
importieren, haben Ihre Benutzer die Möglichkeit, Zeilen zu bearbeiten und eine Historie zu erstellen.