14.3.3.11 Other methods
OptionParser supports several other public methods:
-
set_usage(usage)
Set the usage string according to the rules described above for the
usage
constructor keyword argument. PassingNone
sets the default usage string; useSUPPRESS_USAGE
to suppress a usage message. -
enable_interspersed_args()
,disable_interspersed_args()
Enable/disable positional arguments interspersed with options, similar to GNU getopt (enabled by default). For example, if
"-a"
and"-b"
are both simple options that take no arguments, optparse normally accepts this syntax:prog -a arg1 -b arg2
and treats it as equivalent to
prog -a -b arg1 arg2
To disable this feature, call
disable_interspersed_args()
. This restores traditional Unix syntax, where option parsing stops with the first non-option argument. -
set_defaults(dest=value, ...)
Set default values for several option destinations at once. Using set_defaults() is the preferred way to set default values for options, since multiple options can share the same destination. For example, if several ``mode'' options all set the same destination, any one of them can set the default, and the last one wins:
parser.add_option("--advanced", action="store_const", dest="mode", const="advanced", default="novice") # overridden below parser.add_option("--novice", action="store_const", dest="mode", const="novice", default="advanced") # overrides above setting
To avoid this confusion, use set_defaults():
parser.set_defaults(mode="advanced") parser.add_option("--advanced", action="store_const", dest="mode", const="advanced") parser.add_option("--novice", action="store_const", dest="mode", const="novice")
See About this document... for information on suggesting changes.