Python argparse コマンドラインフラグ (引数なし) 質問する

Python argparse コマンドラインフラグ (引数なし) 質問する

コマンドライン引数にオプションのフラグを追加するにはどうすればよいですか?

例えば、私は書くことができる

python myprog.py 

または

python myprog.py -w

私は試した

parser.add_argument('-w')

しかし、次のようなエラーメッセージが表示される。

Usage [-w W]
error: argument -w: expected one argument

これは、-w オプションの引数値が必要であることを意味していると思います。フラグを受け入れる方法は何ですか?

私は見つけているpython.org/library/argparse.html を参照してください。この問題に関してはかなり不明瞭です。

ベストアンサー1

引数はコマンドラインの のw後に値が必要です。変数または を-w設定してスイッチを切り替えるだけの場合は、TrueFalseここ(具体的には store_true と store_false)

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('-w', action='store_true')

ここで はaction='store_true'を意味しますdefault=False

逆に、 となることもありaction='store_false'、これは を意味しますdefault=True

おすすめ記事