dest="verbose")とします。choices]このオプションの後ろには必ず引数が続きます。リストに追加されます。このオプションを最初にみつけた時点で空のリストを自動的に生成します。アクションと同じです。メソッドを呼び出します。メソッドを持っていなければならないことを意味します。追加(append)されます。このオプションを最初にみつけた時点で空のリストを自動的に生成します。保存されている整数値をインクリメントします。最初にインクリメントを行う前にゼロに設定されます。節を参照してください。"help"現在のオプションパーザ内の全てのオプションに対する完全なヘルプメッセージを出力します。文字列から生成します。文字列が指定されていなくても、オプションはヘルプメッセージ中に列挙されます。オプションを追加するので、通常自分で生成する必要はありません。プロセスを終了します。指定されているバージョン番号を標準出力に出力して終了します。メソッドで書式化されてから出力されます。引数が指定されたときのみ関係のあるアクションです。オプションを作成することはほとんどないでしょう。種類のビルトインのオプション型があります。節を参照してください。(またはコールバックに渡されます)。呼び出すことで行なわれます。役に立つエラーメッセージを出力します。エラーは同様の扱いです。オプションのサブタイプです。利用できるオプション引数のセットを指定します。普通の使い方は一切キーワード引数を使わないというものです。メソッドを適切なエンドユーザ向けのエラーメッセージとともに呼び出します。プロセスを終了させることになります。オプション解析器への問い合わせと操作¶オプションパーザのデフォルトの振る舞いは、ある程度カスタマイズすることができます。オプションパーザの中を調べることもできます。幾つかのヘルパーメソッドを提供しています:OptionParser.disable_interspersed_args()¶オプションで無い最初の引数を見つけた時点でパースを止めるように設定します。メソッドを呼び出してください。システムのように、最初のオプションでない引数を見つけたときにオプションの解析を止めるようになります。別のコマンドを実行するコマンドをプロセッサを作成する際、別のコマンドのオプションと自身のオプションが混ざるのを防ぐために利用することができます。各コマンドがそれぞれ異なるオプションのセットを持つ場合などに有効です。OptionParser.enable_interspersed_args()¶オプションで無い最初の引数を見つけてもパースを止めないように設定します。オプションとコマンド引数の順序が混ざっても良いようになります。これはデフォルトの動作です。インスタンスを返します。対応するオプションがある場合、そのオプションを削除します。該当するオプションに他のオプション文字列が指定されていた場合、それらのオプション文字列は全て無効になります。標準的なオプションを備えた自前のサブクラスを定義してしまった場合にはよく起きます。既存のオプションとの衝突がないかチェックします。何らかの衝突が見付かると、現在設定されている衝突処理メカニズムを呼び出します。使っていることを検出します。除去して問題を解決します。有効にできなくなります。noisyこれまでに追加したオプション文字列を跡形もなく削り去り、ユーザがそのオプションをコマンドラインから起動する手段をなくせます。オプションを完全に除去してしまうので、こうしたオプションはヘルプテキストやその他のどこにも表示されなくなります。オプションはもはやアクセスできなくなります。インスタンスはいくつかの循環参照を抱えています。呼び出すことでこの循環参照を意図的に断ち切るという方法を選ぶこともできます。大きなオブジェクトグラフが到達可能になっているような場合に有用です。キーワード引数での規則に従った使用法の文字列をセットします。よって使用法メッセージを抑制できます。いう文字列は現在のプログラム名に置換されます。空もしくは未定義の時は何もしません。同じですが、使用法メッセージを表示する代わりに文字列として返します。幾つかの保存先に対してデフォルト値をまとめてセットします。使うのは複数のオプションにデフォルト値をセットする好ましいやり方です。複数のオプションが同じ保存先を共有することがあり得るからです。オプションの定義です。拡張は汎用性に富んでいますが、単純なケースに対していささか大げさでもあります。大体は簡単なコールバックで事足りるでしょう。アクションを使ってオプション自体を定義するコールバックを書く。定義しておかなければなりません。コマンドライン上に現れたどうかだけです。いえ、場合によっては、自分のコールバック関数に任意の個数のコマンドライン引数を消費させたいこともあるでしょう。これについてはこの節の後の方で説明します。指定した追加引数しか渡しません。parser):コールバックの四つの引数については後で説明します。指定した型に変換させます。変換後の値をどこかに保存する代わりにコールバック関数に渡します。個の引数を消費します。型に変換できなければなりません。変換後の値はタプルとしてコールバックに渡されます。インスタンスですopt_strは、コールバック呼び出しのきっかけとなったコマンドライン上のオプション文字列です。)valueオプションの引数で、コマンドライン上に見つかったものです。設定されている場合、単一の引数しかとりません。型はオプションの型として指定された型になります。適切な型をもつ値のタプルになります。この変数が有用なのは、この値を介してインスタンス属性としていくつかの興味深いデータにアクセスできるからです:parser.largs現在放置されている引数、すなわち、すでに消費されたものの、オプションでもオプション引数でもない引数からなるリストです。あれば除き、それ以外の引数が残っているリストです。自由に変更でき、例えばさらに引数を消費したりできます。台無しにしないので便利です。コマンドライン上にすでに現れているオプションの値にもアクセスできます。オプション属性で与えられた任意の位置引数からなるタプルです。オプション属性で与えられた任意のキーワード引数からなるタプルです。送出しなければなりません。この例外をとらえてプログラムを終了させ、ユーザが指定しておいたエラーメッセージを標準エラー出力に出力します。エラーメッセージは明確、簡潔かつ正確で、どのオプションに誤りがあるかを示さなければなりません。なければ、ユーザは自分の操作のどこに問題があるかを解決するのに苦労することになります。アクションを使っても実現できます。コマンドライン中に現れた場合にはエラーになります。エラーメッセージとセットされるフラグを一般化しなければなりません。任意の条件をチェックする¶もちろん、単に定義済みのオプションの値を調べるだけにとどまらず、コールバックには任意の条件を入れられます。満月でなければ呼び出してはならないオプションがあるとしましょう。定義は読者への課題としましょう。決まった数の引数をとるようなコールパックオプションを定義するなら、問題はやや興味深くなってきます。オプションの定義に似ています。定義していれば、そのオプションは引数を受け取ったときに該当する型に変換できなければなりません。個の引数を受け取ります。個の引数を受け取り、それらを整数に変換するところまで面倒をみてくれます。ユーザは単にそれを保存するだけです。可変個の引数¶あるオプションに可変個の引数を持たせたいと考えているなら、問題はいささか手強くなってきます。該当する組み込みのオプション解析機能を提供していないので、自分でコールバックを書かなければなりません。コマンドライン解析における難題を自分で解決しなければなりません。追加します)オプションが可変個の引数をとるようにさせたいなら、いくつかの巧妙で厄介な問題に配慮しなければなりません。可変個の引数に関する問題を直接的に取り扱わないのです)。コマンドラインオプションをどのように解釈するかを決める二つの重要な要素はそれぞれのオプションのアクションと型なので、拡張の方向は新しいアクションと型を追加することになると思います。クラスのサブクラスを自身で定義する必要があります。おける型を定義する一対の属性があります。