Parsing the command line

May 2004
05

In Python ist es mithilfe des getopt-Modul eh schon relativ einfach die Argumente und Optionen von Shellscripts zu verarbeiten. Noch einfacher und eleganter wird es, wenn man optionparse benutzt. Die schöne Idee: Wenn ich schon im Docstring (sozusagen das usage für das Script) die Argumente spezifiziert habe, warum dann nochmals für das getopt-Modul alles genau angeben.

Also einfach den Docstring parsen und daraus die Argumente herausziehen:

"""An example script invoking optionparse, my wrapper around optparse.

usage: %prog [options] args
  -p, --positional: print positional arguments
  -1, --option1=OPTION1: print option1
  -2, --option2=OPTION2: print option2
"""

import optionparse
opt, args = optionparse.parse(__doc__)
if not opt and not args: optionparse.exit()
if opt.positional: print args
if opt.option1: print opt.option1
if opt.option2: print opt.option2

Da machen Shellscripte noch mehr Spaß, vorallem wird man auch gezwungen nen sinnvollen Docstring zu schreiben ;-)

Kommentare:

Tut mir leid, es sind keine Kommentare mehr möglich.