Module optparse :: Class OptionParser
[show private | hide private]
[frames | no frames]

Class OptionParser

OptionContainer --+
                  |
                 OptionParser

Known Subclasses:
OptionParser

Class attributes:
  standard_option_list : [Option]
    list of standard options that will be accepted by all instances
    of this parser class (intended to be overridden by subclasses).

Instance attributes:
  usage : string
    a usage string for your program.  Before it is displayed
    to the user, "%prog" will be expanded to the name of
    your program (self.prog or os.path.basename(sys.argv[0])).
  prog : string
    the name of the current program (to override
    os.path.basename(sys.argv[0])).

  allow_interspersed_args : boolean = true
    if true, positional arguments may be interspersed with options.
    Assuming -a and -b each take a single argument, the command-line
      -ablah foo bar -bboo baz
    will be interpreted the same as
      -ablah -bboo -- foo bar baz
    If this flag were false, that command line would be interpreted as
      -ablah -- foo bar -bboo baz
    -- ie. we stop processing options as soon as we see the first
    non-option argument.  (This is the tradition followed by
    Python's getopt module, Perl's Getopt::Std, and other argument-
    parsing libraries, but it is generally annoying to users.)

  rargs : [string]
    the argument list currently being parsed.  Only set when
    parse_args() is active, and continually trimmed down as
    we consume arguments.  Mainly there for the benefit of
    callback options.
  largs : [string]
    the list of leftover arguments that we have skipped while
    parsing options.  If allow_interspersed_args is false, this
    list is always empty.
  values : Values
    the set of option values currently being accumulated.  Only
    set when parse_args() is active.  Also mainly for callbacks.

Because of the 'rargs', 'largs', and 'values' attributes,
OptionParser is not thread-safe.  If, for some perverse reason, you
need to parse command-line arguments simultaneously in different
threads, use different OptionParser instances.

Method Summary
  __init__(self, usage, option_list, option_class, version, conflict_handler, description, formatter, add_help_option, prog)
  add_option_group(self, *args, **kwargs)
  check_values(self, values, args)
check_values(values : Values, args : [string]) -> (values : Values, args : [string]) Check that the supplied option values and leftover arguments are valid.
  disable_interspersed_args(self)
  enable_interspersed_args(self)
  error(self, msg)
error(msg : string) Print a usage message incorporating 'msg' to stderr and exit.
  format_help(self, formatter)
  format_option_help(self, formatter)
  get_default_values(self)
  get_option_group(self, opt_str)
  get_prog_name(self)
  get_usage(self)
  get_version(self)
  parse_args(self, args, values)
parse_args(args : [string] = sys.argv[1:], values : Values = None) -> (values : Values, args : [string]) Parse the command-line options found in 'args' (default: sys.argv[1:]).
  print_help(self, file)
print_help(file : file = stdout) Print an extended help message, listing all options and any help text provided with them, to 'file' (default stdout).
  print_usage(self, file)
print_usage(file : file = stdout) Print the usage message for the current program (self.usage) to 'file' (default stdout).
  print_version(self, file)
print_version(file : file = stdout) Print the version message for this program (self.version) to 'file' (default stdout).
  set_default(self, dest, value)
  set_defaults(self, **kwargs)
  set_usage(self, usage)
  _create_option_list(self)
  _get_args(self, args)
  _init_parsing_state(self)
  _match_long_opt(self, opt)
_match_long_opt(opt : string) -> string Determine which long option string 'opt' matches, ie.
  _populate_option_list(self, option_list, add_help)
  _process_args(self, largs, rargs, values)
_process_args(largs : [string], rargs : [string], values : Values) Process command-line arguments and populate 'values', consuming options and arguments from 'rargs'.
  _process_long_opt(self, rargs, values)
  _process_short_opts(self, rargs, values)
    Inherited from OptionContainer
  add_option(self, *args, **kwargs)
add_option(Option)...
  add_options(self, option_list)
  format_description(self, formatter)
  get_option(self, opt_str)
  has_option(self, opt_str)
  remove_option(self, opt_str)
  set_conflict_handler(self, handler)
  set_description(self, description)
  _check_conflict(self, option)
  _create_option_mappings(self)
  _share_option_mappings(self, parser)

Class Variable Summary
list standard_option_list = []

Method Details

check_values(self, values, args)

check_values(values : Values, args : [string])
-> (values : Values, args : [string])

Check that the supplied option values and leftover arguments are
valid.  Returns the option values and leftover arguments
(possibly adjusted, possibly completely new -- whatever you
like).  Default implementation just returns the passed-in
values; subclasses may override as desired.

error(self, msg)

error(msg : string)

Print a usage message incorporating 'msg' to stderr and exit.
If you override this in a subclass, it should not return -- it
should either exit or raise an exception.

parse_args(self, args=None, values=None)

parse_args(args : [string] = sys.argv[1:],
           values : Values = None)
-> (values : Values, args : [string])

Parse the command-line options found in 'args' (default:
sys.argv[1:]).  Any errors result in a call to 'error()', which
by default prints the usage message to stderr and calls
sys.exit() with an error message.  On success returns a pair
(values, args) where 'values' is an Values instance (with all
your option values) and 'args' is the list of arguments left
over after parsing options.

print_help(self, file=None)

print_help(file : file = stdout)

Print an extended help message, listing all options and any
help text provided with them, to 'file' (default stdout).

print_usage(self, file=None)

print_usage(file : file = stdout)

Print the usage message for the current program (self.usage) to
'file' (default stdout).  Any occurence of the string "%prog" in
self.usage is replaced with the name of the current program
(basename of sys.argv[0]).  Does nothing if self.usage is empty
or not defined.

print_version(self, file=None)

print_version(file : file = stdout)

Print the version message for this program (self.version) to
'file' (default stdout).  As with print_usage(), any occurence
of "%prog" in self.version is replaced by the current program's
name.  Does nothing if self.version is empty or undefined.

_match_long_opt(self, opt)

_match_long_opt(opt : string) -> string

Determine which long option string 'opt' matches, ie. which one
it is an unambiguous abbrevation for.  Raises BadOptionError if
'opt' doesn't unambiguously match any long option string.

_process_args(self, largs, rargs, values)

_process_args(largs : [string],
                 rargs : [string],
                 values : Values)

Process command-line arguments and populate 'values', consuming
options and arguments from 'rargs'.  If 'allow_interspersed_args' is
false, stop at the first non-option argument.  If true, accumulate any
interspersed non-option arguments in 'largs'.

Class Variable Details

standard_option_list

Type:
list
Value:
[]                                                                     

Generated by Epydoc 2.0 on Tue Jul 22 05:31:06 2003 http://epydoc.sf.net