Pythonのargparseモジュールは、コマンドライン引数の解析を容易にします。この記事では、argparseを使用してデフォルトのリストを扱う方法について説明します。
argparseとは
argparseはPythonの標準ライブラリで、コマンドライン引数の解析を行うためのモジュールです。このモジュールを使用すると、プログラムが必要とする引数を定義し、それらの引数をsys.argvから解析する方法を見つけ出すことができます。
リスト型のコマンドライン引数の受け取り方
argparseを使用してリスト型のコマンドライン引数を受け取る方法は以下の通りです。
import argparse
parser = argparse.ArgumentParser(description='an example program')
parser.add_argument('--flist', required=True, nargs="*", type=float, help='a list of float variables')
parser.add_argument('--ilist', required=True, nargs="*", type=int, help='a list of int variables')
args = parser.parse_args()
print(args.flist)
print(args.ilist)
このプログラムでは、--flist
と--ilist
という2つのコマンドライン引数を定義しています。これらの引数はリスト型で、それぞれfloat型とint型のリストを受け取ります。
実行例
以下のように実行すると、リスト型のコマンドライン引数を受け取ることができます。
$ python test.py --flist 1 2 3 --ilist 1 2 3
[1.0, 2.0, 3.0]
[1, 2, 3]
注意点
コマンドライン引数にリストを与える時は、[1,2,3]
の形ではなく1 2 3
のように空白を空けて渡すようにしてください。
以上がPythonのargparseを使用してデフォルトのリストを扱う方法になります。argparseは非常に強力なモジュールで、この他にも多くの機能を提供しています。詳細はPythonの公式ドキュメンテーションをご覧ください。