適切なオプションが 2 つあります。
- ConfigParserを使用した Python 標準構成ファイル形式
- PyYAMLのようなライブラリを使用するYAML
標準の Python 構成ファイルは、INI ファイルのように[sections]
andkey : value
またはkey = value
ペアになっています。この形式の利点は次のとおりです。
- サードパーティのライブラリは不要
- シンプルで使い慣れたファイル形式。
YAML は、構成用に特別に設計されたものではなく、人間に優しいデータ シリアル化形式になるように設計されているという点で異なります。非常に読みやすく、同じデータを表すいくつかの異なる方法を提供します。あなたの問題については、次のような YAML ファイルを作成できます。
file .* does not exist : file not found
user .* not found : authorization error
またはこのように:
{ file .* does not exist: file not found,
user .* not found: authorization error }
PyYAML の使用はこれ以上ないほど簡単です。
import yaml
errors = yaml.load(open('my.yaml'))
この時点errors
で、予想される形式の Python 辞書が作成されます。YAML は辞書以上のものを表すことができます: ペアのリストを好む場合は、次の形式を使用します。
-
- file .* does not exist
- file not found
-
- user .* not found
- authorization error
または
[ [file .* does not exist, file not found],
[user .* not found, authorization error]]
yaml.load
が呼び出されると、リストのリストが生成されます。
YAML の利点の 1 つは、既存のハードコーディングされたデータをファイルにエクスポートして初期バージョンを作成するために使用できることです。データを適切な形式にするために、切り取り/貼り付けと一連の検索/置換を行う必要はありません。
YAML 形式に慣れるには少し時間がかかりますが、PyYAML を使用する方が ConfigParser を使用するよりも簡単で、YAML を使用してデータを表現する方法に関するオプションが増えるという利点があります。
どちらも現在のニーズに合うように思えますが、ConfigParser は使い始めるのが簡単ですが、YAML は将来、ニーズが拡大した場合により柔軟になります。
頑張ってください!