2016-08-12 12 views
1

オプションの--foo--bar引数を取るスクリプトを作成します。どちらも指定できません。両方を指定することも正当です。ただし、--fooまたは--barと指定すると、コマンドラインパーサーエラーが発生します。私はparser.parse_args()を呼び出すPython argparse相互に必要な引数グループを行う方法

後、私は、この状態を確認し、適切なエラーを発生させるためにコードを書くことができますが、この、add_mutually_exclusive_groupの逆の並べ替えを行うには、既にargparseに組み込まれた方法はありますか?

答えて

2

いいえ、この種のグループ化や組み込みテストはありません。この1つだけxorテスト。

あなたの引数に合理的なデフォルト値(デフォルトのデフォルト値Noneなど)があれば、解析後にテストを実装することは難しくありません。

もう1つの可能性は、にnargs=2という1つの引数を定義することです.2つの値が必要です。

さらに、ユーザーが両方の値を提供するかどうかを気にする必要がないように、どちらか一方または両方に適切なデフォルト値を指定することもできます。

関連する問題