###
8 コールバックの例5: 固定引数

決まった数の引数をとるようなコールパックオプションを定義するなら、問題はやや興味深く なってきます。引数をとるようコールバックに指定するのは、`store` や `append` オプションの定義に似ています: `type` を定義していれば、 そのオプションは引数を受け取ったときに該当する型に変換できねばなりません; さらに `nargs` を指定すれば、オプションは `nargs` 個の引数を 受け取ります。

標準の `store` アクションをエミュレートする例を以下に示します:

    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")

`optparse` は 3 個の引数を受け取り、それらを整数に変換するところまで 面倒をみてくれます; ユーザは単にそれを保存するだけです。 (他の処理もできます; いうまでもなく、この例にはコールバックは必要ありません)