14.3.4.8 Callback example 5: fixed arguments
Things get slightly more interesting when you define callback options
that take a fixed number of arguments. Specifying that a callback
option takes arguments is similar to defining a store or append
option: if you define type, then the option takes one argument that
must be convertible to that type; if you further define nargs , then
the option takes nargs arguments.
Here's an example that just emulates the standard store action:
def store_value(option, opt_str, value, parser):
setattr(parser.values, option.dest, value)
[...]
parser.add_option("--foo",
action="callback", callback=store_value,
type="int", nargs=3, dest="foo")
Note that optparse takes care of consuming 3 arguments and converting them
to integers for you; all you have to do is store them. (Or whatever;
obviously you don't need a callback for this example.)
Release 2.5.2, documentation updated on 21st February, 2008.
See About this document... for information on suggesting changes.
|