6.21.4.2 コールバック関数はどのように呼び出されるか

コールバックは全て以下の形式で呼び出されます:

func(option, opt_str, value, parser, *args, **kwargs)

ここで、

option
コールバックを呼び出している Option のインスタンスです。
opt_str
は、コールバック呼び出しのきっかけとなったコマンドライン上のオプション文字列です。 (長い形式のオプションに対する省略形が使われている場合、opt は完全な、 正式な形のオプション文字列となります -- 例えば、ユーザが --foobar の短縮形として "-foo" をコマンドラインに入力した時には、opt_str"-foobar" となります。)
value
オプションの引数で、コマンドライン上に見つかったものです。 optparse は、type が設定されている場合、 単一の引数しかとりません;value の型はオプションの型 として指定された型になります。このオプションに対する type が None である(引数なしの) 場合、value は None になります。 "nargs" > 1 であれば、value は は適切な型をもつ値のタプルになります。
parser
現在のオプション解析の全てを駆動している OptionParser インスタンスです。この変数が有用なのは、この値を介してインスタンス属性と していくつかの興味深いデータにアクセスできるからです:
parser.largs
現在放置されている引数、すなわち、すでに消費されたものの、オプションでも オプション引数でもない引数からなるリストです。 parser.largs は自由に変更でき、 たとえば引数を追加したりできます (このリストは args 、すなわち parse_args() の二つ目の戻り値になります)
parser.rargs
現在残っている引数、すなわち、 opt_str および value) があれば除き、それ以外の引数が残っているリストです。 parser.rargs は自由に変更でき、例えばさらに引数を消費したり できます。 [parser.values] オプションの値がデフォルトで保存されるオブジェクト (optparse.OptionValues のインスタンス です。この値を使うと、コールバック関数がオプションの値を記憶するために、 他のoptparse と同じ機構を使えるようにするため、グローバル変数や閉包 (closure) を台無しにしないので便利です。 コマンドライン上にすでに現れているオプションの値にもアクセスできます。
args
callback_args オプション属性で与えられた任意の固定引数 からなるタプルです。
kwargs
callback_args オプション属性で与えられた任意のキーワード引数 からなるタプルです。

ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。