最通用、最好的应用配置管理方法是什么?我想拥有这些属性以便拥有“良好的配置管理”:
- 所有可用属性及其默认值的列表 地方。
- 应用程序用户可以更改的属性列表,也是一个 地方。
- 当我检索特定属性时,它的值是从 第二个列表(用户可更改的配置)或者如果它不存在,从 第一个列表。
到目前为止,我所做的是将第一个列表硬编码为一个对象(更具体地说是一个dict),编写了ConfigParser 使用的 让应用程序用户轻松更改某些属性(第二个列表),并在配置对象上编写一个公共(public)方法以按名称检索属性,如果不存在,则引发异常。最后,一个对象负责管理所有的东西(解析文件、引发异常、覆盖属性等),但我想知道,是否有一个内置库可以做或多或少相同的事情,甚至更好管理配置的方式,它考虑了所有 KISS、DRY 和其他原则(我用这种方法并不总是成功)?.conf 文件
提前致谢。
请您参考如下方法:
创建一个默认设置模块,其中包含您想要的默认设置。使用顶部的 from default_settings import * 语句创建第二个供用户使用的模块,并指示用户改为将任何替换写入该模块。
Python 的表现力很强,所以在大多数情况下,如果您希望用户在任何层面上都能理解它,则可以使用 Python 模块本身作为配置文件。
