yamlでスクリプトの引数やファイルパスなどを読み込む [Python][yaml]

インストール

pip install pyyaml

まずは、config.yamlを作成

# config.yaml
n_class: 10
xml_path: /home/ubuntu/disk/xml

次にconfif.yamlを読み込むスクリプトを作成

import yaml

with open("./config.yaml") as f:
        args = yaml.safe_load(f)

n_class = args["n_class"]
xml_path = args["xml_path"]

以上。

yamlでは、n_classのように整数を記述すると、int型の整数として解釈してくれるので、キャストせずに変数をそのまま使えるという利点もある。

ご覧の通り、yamlは非常にシンプルで可読性も高いので、ハードコーディングや、argparseではなく、yamlでの引数読み込みの方が良いと思う。

Pocket