Pythonでは、argparse
を使ってコマンドライン引数を取得し、それをJSON形式で出力することが可能です。以下にその手順を示します。
まず、argparse
とjson
をインポートします。
import json
import argparse
次に、argparse.ArgumentParser()
を使って引数を取得します。この例では、--param1
、--param2
、--param3
という3つの引数を取得します。
parser = argparse.ArgumentParser()
parser.add_argument("--param1", type=str, default="test")
parser.add_argument("--param2", type=int, default=100)
parser.add_argument("--param3", type=float, nargs="+", default=[0.1, 0.2, 0.3])
args = parser.parse_args()
最後に、取得した引数をJSON形式で出力します。この例では、params.json
というファイルに出力します。
with open("./params.json", mode="w") as f:
json.dump(args.__dict__, f, indent=4)
以上で、argparse
で取得した引数をJSON形式で出力することができます。
ただし、注意点として、JSON出力時にシリアライズできない型が含まれているとエラーを吐くことがあります。その場合は、オブジェクトを文字列型に変換するか、dump
時にdefault
またはcls
を指定することでエンコード方式を指定することが可能です。
以上がPythonでargparse
を使って引数をJSON形式で出力する方法になります。この情報が役立つことを願っています。