CLI Parameter mit Docopt und Schema

CLI Parameter mit Docopt und Schema

simplel und pythonic
21 Minuten

Beschreibung

vor 8 Jahren

import docopt

"""

CLI Parameter mit Docopt und Schema


Gerade für CLI Tools ist Python oft eine gute Wahl. Es verbindet die Geschwindigkeit von Shell-Programmierung
mit Features einer durchdachten Sprache.

Eine der ersten Zeilen Code ist sys.argv[] zu parsen. Die Standardlib bringt da mit optparse oder seit
Python (2.7|3) argparse sehr umfangreiche Packages mit. Umfangreich heißt leider auch etwas zeitintensiv
zu nutzen, wenn man die Doku nicht auswendig gelernt hat.

Komplett von der anderen Seite zäumt Docopt [0] dieses Problem auf. Man schreibt einfach seinen Hilfetext
in einen String und wirft ihn diesem Modul vor. Genau, das war alles.

In der Natur der Sache liegt, dass Docopt nicht weiß, wie es die CLI Optionen und Argumente validieren
soll. Da kommt z. B. Schema [1] des selben Autors ins Spiel. Dieses Modul bietet ein simples Interface beliebige
Datenstrukturen zu validieren. Damit ist es nicht nur ein perfekter Kompagnon für Docopt sondern für Daten
fast jeglicher Art.

[0] http://docopt.org/

[1] https://github.com/halst/schema



Usage:




   import-this listen [--pre-fetch ]




   import-this download []




Options:




   -h --help Show help screen




   -p --pre-fetch Download before playing



"""


arguments = docopt(__doc__)

Weitere Episoden

Softwaretests mit py.test
60 Minuten
vor 7 Jahren
Das SCM Mercurial
1 Stunde 45 Minuten
vor 8 Jahren
PyCon DE 2012
58 Minuten
vor 8 Jahren
Sphinx
37 Minuten
vor 9 Jahren
15
15
:
: