yamlによる引数読み込みを改善
Pythonを実行する際の引数指定は,以下のようにyamlで行うのが効率が良いとされている.
# yamlファイルの準備(ここは普通手動で行う) content = "batch_size: 16\nwidth: 224\nheight: 224" with open("config.yaml", "w") as f: f.write(content)
# 通常 import yaml CONFIG = yaml.safe_load(open("config.yaml")) # ファイル名はハードコーディングではなくopen(args.config)のようにコマンドライン引数から読み込むのが良い CONFIG["width"]
しかし,キー指定する際にカッコとダブルクォートを打つのは面倒なのでaddictを用いて辞書のキーをアトリビュートのように指定.
# addictを用いたキー指定なしの読み込み import yaml from addict import Dict CONFIG = Dict(yaml.safe_load(open("config.yaml"))) CONFIG.width
一見地味に思えるこの方法だが,実際のスクリプトでは引数をいくつも指定することがあるため,非常に便利な方法だと思う.
ディスカッション
コメント一覧
まだ、コメントがありません