Hallo liebe Community,
ich hoffe ihr könnt mir bei meinem kleinen Problem weiterhelfen. Ich möchte gerne das über die Kommandozeile mehrere Dateien aus einem Ordner und dessen Unterordner automatisch eingelesen werden und mir danach als Liste zur Verfügung stehen.
Ich stelle mir das folgendermassen vor:
script.py c:\ordner\*.txt
Somit würden alle Dateien mit der Endung "txt" in dem angegebenen Ordner gesucht und als Listenargument gespeichert werden. Kann der argparser so etwas von Haus aus oder muss ich das selber implementieren ?
Frage zum Argparser
Unter Unix kümmert sich die Shell um das Auflösungen von "*" (und anderen Wildcard-Zeichen). Unter Windows musst du's AFAIK selbst machen. Schau dir mal das "glob"-Modul an. Das sollte ungefähr so funktionieren:
Stefan
Code: Alles auswählen
import sys, glob
for arg in sys.argv:
for name in glob.glob(arg):
mach_was_mit(name)
Das argparse Modul kann so etwas von sich aus nicht, es dient nur zum behandeln der Parameter.
Du kannst aber mit dem argparse den übergebenen Pfad an eine Funktion weitergeben die das Ganze abhandelt.
Wie die aussehen könnte wurde ja bereits geschrieben.
Du kannst aber mit dem argparse den übergebenen Pfad an eine Funktion weitergeben die das Ganze abhandelt.
Wie die aussehen könnte wurde ja bereits geschrieben.
Hast du die Dokumentation zu argparse und glob gelesen?
Es sollte die Fragen klären, wofür die einzelnen Funktionen gedacht sind und überhaupt können.
Es sollte die Fragen klären, wofür die einzelnen Funktionen gedacht sind und überhaupt können.
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]