vielen dank, das probier ich gleich mal aus.
bin noch kein programmier profi, da bin ich ab und zu auf kleien tipps angewiesen
Werte per Eingabeaufforderung übergeben
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Wo bleibt mein Beispiel?Hyperion hat geschrieben:Hm ... da würde mich mal ein Bsp. interessieren mit 3 Parametern, bei dem Du eine Typüberprüfung hast und dazu noch einen Hilfetext! Ich denke bereits da hat optparse Vorteile ...DasIch hat geschrieben: Sollte man unerwarteterweise doch zig Optionen haben kann es sinn machen aber die meisten dieser kleinen Skripte haben dass nicht. Da hat man i.d.R. eine handvoll Parameter die man in 2 Zeilen "geparst" hat.
Du nimmst ein dict und nutzt dass zum dispatchen. Bei den paar Parametern sollte ein einfacher Usage String, falls die Anzahl der Parameter o.ä. nicht stimmt, a la ``'USAGE: %s $foo $bar $baz' % sys.argv[0]`` reichen. Den Typ zu prüfen halte ich für überflüssig. Wenn notwendig gibt man die halt an und wer dass nicht liest und meint einfach irgendwas zu übergeben dürfte ziemlich schnell mit einer Exception begrüsst werden.
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Also das überzeugt mich überhaupt nicht!
Zunächst einmal ist es fehlerbehaftet! (Die Usage-Ausgabe ist kaputt, Funktionen akzeptieren natürlich keine weiteren Parameter)
Davon abgesehen ist das imho kein gutes Beispiel. Du mappst direkt auf irgend welche Funktionen, ohne mehrere Parameter angeben zu können.
So etwas hat man imho eher selten. Ich möchte häufiger verschiedene Parameter abfragen und für das Script verfügbar machen.
Das klappt eben nicht so einfach, da Du erst einmal den Parameter rausfiltern und den anschließenden Wert filtern müßtest. Da die Reihenfolge beliebig sein kann, ist das eben nicht ganz so trivial.
Insofern bleibe ich bei meiner These, dass die Verwendung von optparse sich schon bei wenigen Parametern lohnt!
Zunächst einmal ist es fehlerbehaftet! (Die Usage-Ausgabe ist kaputt, Funktionen akzeptieren natürlich keine weiteren Parameter)
Davon abgesehen ist das imho kein gutes Beispiel. Du mappst direkt auf irgend welche Funktionen, ohne mehrere Parameter angeben zu können.
So etwas hat man imho eher selten. Ich möchte häufiger verschiedene Parameter abfragen und für das Script verfügbar machen.
Das klappt eben nicht so einfach, da Du erst einmal den Parameter rausfiltern und den anschließenden Wert filtern müßtest. Da die Reihenfolge beliebig sein kann, ist das eben nicht ganz so trivial.
Insofern bleibe ich bei meiner These, dass die Verwendung von optparse sich schon bei wenigen Parametern lohnt!
Failed ... dein Beispiel übergibt Parameter an Funktionen, die keine entgegen nehmen, und es zeigt die Usage-Nachricht nur an, wenn man mal vergisst, ein Argument anzugeben. Ein Tippfehler oder ein zusätzliches Argument dagegen führen zu einem netten Traceback ...DasIch hat geschrieben:http://paste.pocoo.org/show/106845/
Und Optionen kann man so sowieso nicht behandeln ...