argparseでヘルプメッセージをグループ化
argparseでオプションの数が多くなった際に、ヘルプメッセージをグループ化する方法
Pythonでオプションの数が多くなった場合は、add_argument_group()
でグループを追加することでヘルプメッセージの見やすさが向上します。
あくまでヘルプメッセージのグループ化だけなのでその他の動作には影響を与えません
使用例
import argparse
import sys
def main():
parser = argparse.ArgumentParser()
group_a = parser.add_argument_group('Group A')
group_a.add_argument('--a.max', help='Max for A', metavar='NUM')
group_a.add_argument('--a.min', help='Min for A', metavar='NUM')
group_b = parser.add_argument_group('Group B')
group_b.add_argument('--b.max', help='Max for B', metavar='NUM')
group_b.add_argument('--b.min', help='Min for B', metavar='NUM')
parser.print_help()
if __name__ == "__main__":
sys.exit(main())
上記コードの実行例は以下のようになります
usage: argparse_group.py [-h] [--a.max NUM] [--a.min NUM] [--b.max NUM]
[--b.min NUM]
optional arguments:
-h, --help show this help message and exit
Group A:
--a.max NUM Max for A
--a.min NUM Min for A
Group B:
--b.max NUM Max for B
--b.min NUM Min for B
最近のコメント