你有两个不错的选择:
- 使用ConfigParser 的Python 标准配置文件格式
- YAML使用PyYAML 之类的库
标准的 Python 配置文件看起来像带有[sections]
和key : value
或key = value
对的 INI 文件。这种格式的优点是:
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 的一个优点是您可以使用它将现有的硬编码数据导出到文件中以创建初始版本,而不是通过剪切/粘贴加上一堆查找/替换来将数据转换为正确的格式。
熟悉 YAML 格式需要更多时间,但使用 PyYAML 比使用 ConfigParser 更简单,其优点是您有更多关于如何使用 YAML 表示数据的选项。
任何一种听起来都适合您当前的需求,如果您的需求扩大,ConfigParser 将更容易开始,而 YAML 会在未来为您提供更多灵活性。
祝你好运!