Pythonでコマンドライン引数を受け取るには、標準モジュールsys
のargv
を使う方法と、標準モジュールargparse
を使う方法があります。今回は、argparse
モジュールについて詳しく見ていきましょう。
argparseモジュールとは
argparse
モジュールは、Pythonでコマンドラインインターフェースを簡単に作成するためのモジュールです。このモジュールを使用すると、プログラムが必要とする引数を定義し、argparse
がそれらをsys.argv
から解析する方法を指定できます。
argparseモジュールの基本的な使い方
以下に、argparse
モジュールの基本的な使い方を示します。
import argparse
# argparse.ArgumentParserクラスをインスタンス化
parser = argparse.ArgumentParser(description='Process some integers.')
# 引数の設定
parser.add_argument('integers', metavar='N', type=int, nargs='+', help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const', const=sum, default=max, help='sum the integers (default: find the max)')
# 引数の解析
args = parser.parse_args()
print(args.accumulate(args.integers))
このコードは、一連の整数を取り、それらを合計するか最大値を見つけるかを決定します。
まとめ
argparse
モジュールは、Pythonでコマンドラインインターフェースを作成するための強力なツールです。このモジュールを使用すると、ユーザーフレンドリーなコマンドラインインターフェースを簡単に作成でき、ヘルプメッセージと使用メッセージを自動的に生成できます。また、ユーザーがプログラムに無効な引数を与えた場合、エラーも発行します。