[Python-Dev] PEP 389: argparse - new command line parsing module (original) (raw)

Michael Foord fuzzyman at voidspace.org.uk
Sat Oct 3 18:21:43 CEST 2009


Steven Bethard wrote:

[snip...]

I'd be much more interested in Guido's suggestion of auto-generated custom help messages for sub-commands.

Maybe I misunderstood, but I think this is already the default argparse behavior, no? Cool. I didn't realise that help for subcommands was already implemented. :-)

Michael

import argparse parser = argparse.ArgumentParser() parser.addargument('--foo') subparsers = parser.addsubparsers() parser1 = subparsers.addparser('1') parser1.addargument('--bar') parser2 = subparsers.addparser('2') parser2.addargument('baz') parser.parseargs(['--help'])

import argparse parser = argparse.ArgumentParser() parser.addargument('--foo') subparsers = parser.addsubparsers() parser1 = subparsers.addparser('1') parser1.addargument('--bar') parser2 = subparsers.addparser('2') parser2.addargument('baz')

# top level argument help parser.parseargs(['--help']) usage: [-h] [--foo FOO] {1,2} ... positional arguments: {1,2} optional arguments: -h, --help show this help message and exit --foo FOO # help for subparser 1 parser.parseargs(['1', '--help']) usage: 1 [-h] [--bar BAR] optional arguments: -h, --help show this help message and exit --bar BAR # help for subparser 2 parser.parseargs(['2', '--help']) usage: 2 [-h] baz positional arguments: baz optional arguments: -h, --help show this help message and exit Steve

-- http://www.ironpythoninaction.com/ http://www.voidspace.org.uk/blog



More information about the Python-Dev mailing list