Thorsten Kampe wrote: > I'm using optparse for a little Python script. > > 1. The output from "--help" is: > """ > Usage: script.py <arg> > > script.py does something > > Options: > -h, --help show this help message and exit > """ > > I would prefer to have the description before the usage, like... > """ > script.py does something > > Usage: script.py <arg> > > Options: > -h, --help show this help message and exit > """ > > 2. The output from "--doesnotexit" is: > """ > Usage: script.py <arg> > > script.py: error: no such option: --doesnotexist > """ > > I would prefer to have the error first, then the usage and additionally > the options, like... > """ > script.py: error: no such option: --doesnotexist > > Usage: script.py <arg> > > Options: > -h, --help show this help message and exit > """ > > Is that possible with either optparse or the "new kid on the block" > argparse. If so how?
You can easily have #1 with optparse.OptionParser(usage="…")¹, but optparse is deprecated in favor of argparse.ArgumentParser. I do not think you can have #2 with either optparse or argparse: OptionParser() would print the error message last, and ArgumentParser() would not print the description on error. Subclassing ArgumentParser might be feasible, though. ______ ¹ <http://PointedEars.de/devel/tools/text/odfinfo/> -- PointedEars Bitte keine Kopien per E-Mail. / Please do not Cc: me. -- http://mail.python.org/mailman/listinfo/python-list