Simpler command line argument parsing
Project description
Simpler command line argument parsing
In the spirit of `optimist <https://github.com/substack/node-optimist>`__: less magic, more flexibility.
pi install argv
Quickstart
Manual specification of arguments, no configuration:
import argv argv.parse(['-i', 'input.txt', '-z', '--verbose']) >>> {'i': 'input.txt', 'verbose': True, 'z': True}
Uses sys.argv (without the executable name) if no argument list is given:
import sys sys.argv >>> ['/usr/local/bin/bottler', 'exec', 'prog.py', '--debug'] argv.parse() >>> {'_': ['exec', 'prog.py'], 'debug': True}
Configuration:
parser = argv.Parser() parser.add('action') parser.add('target') parser.add('-d', '--debug') parser.parse(['exec', 'prog.py', '--debug']) >>> {'action': 'exec', 'd': True, 'debug': True, 'target': 'prog.py'}
Testing
Continuous integration:
Or run tests locally:
python setup.py test
Development
Terminology:
flag: a command line argument marked with a double dash or each component of a group denoted by a single dash. E.g.,
--verbose --logfile logs/app.txt has two flags: verbose and logfile.
-czf archive.tgz app/ has three flags: c, z, and f.
token: a white-space separated command line item. E.g.,
`–input= –logfile logs/app.txt
License
Copyright (c) 2013 Christopher Brown. MIT Licensed.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.