コマンドライン引数にオプションのフラグを追加する方法を教えてください。
例えば。だから私は書くことができます
python myprog.py
または
python myprog.py -w
私は試した
parser.add_argument('-w')
しかし、私はただ言ってエラーメッセージが表示されます
Usage [-w W]
error: argument -w: expected one argument
これは、-wオプションに引数値が必要であることを意味します。単に旗を受け入れる方法は何ですか?
私は http://docs.python.org/library/argparse.html この質問にはかなり不透明です。
あなたがそれを持っているように、引数wはコマンドラインで-wの後に値を期待しています。変数True
またはFalse
を設定してスイッチを切り替えるだけの場合は、 http://docs.python.org/dev/library/argparse.html#action (特にstore_true)をご覧ください。そしてstore_false)
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-w', action='store_true')
編集:Svenが指摘したように、この場合のデフォルト値は不要です。
実行する準備を整えるための簡単なスニペットを追加します。
出典:myparser.py
import argparse
parser = argparse.ArgumentParser(description="Flip a switch by setting a flag")
parser.add_argument('-w', action='store_true')
args = parser.parse_args()
print args.w
使用法
python myparser.py -w
>> True