2016-12-08 12 views
-1

私は次のように私のコマンドライン引数を解析したい:私は私の最初の引数は文字列である必要があり、それがOption_1またはOption_2のいずれかでなければなりませんPythonのargparseでこのコマンドライン引数を解析するには?

python main.py Option_1 -r ... -m ... 
python main.py Option_2 -r ... -m ... 

。最初の引数の後のすべては、通常のオプションと値のペアです。

私はargparseライブラリでそれを行う方法を見つけることができないようです。オプション/値ペアを簡単に取得できますが、Option_1Option_2を解析するには、-r-mのようなフラグはありません。これは、最初の文字列としてこれらの2の1を受け入れますが、それは実際に最初にする必要はありません

parser.add_argument('pos', choices=['Option_1','Option_2'], help=...) 

答えて

0

構文解析を行う前に、sys.argvから必要な引数を削除します。

sys.argv.pop(1) 
parser = argparse.ArgumentParser() 
1

は選択肢との位置引数を試してみてください。 -r-m引数のうちの1つ以上がこの最初の前に受け入れられますpositional

関連する問題