全局、持久配置作为字典
项目描述
当项目开始增长时,需要一个全局可访问的配置管理器的需求很明显。
将配置映射到字典非常有用,但可能会在内存中引起问题。
Guachi不仅可以在磁盘上保留持久字典,还可以将INI样式的键映射到字典键,如果其中一些缺失,还可以填写默认值。
您不需要了解关于guachi如何存储值的任何信息,只需将其视为常规字典即可!
用户交互
假设您正在处理一个使用.ini文件的Twitter应用程序。这是一个示例INI文件及其外观
[DEFAULT] app.twitter.username = alfredodeza app.update.frequency = 60 app.load.startup = False
我们有一个用户名、一个频率以及启动选项的不同设置。
让我们处理它
ini_file = ``/Users/alfredo/.twwiter.ini`` conf = ConfigMapper(config_db_path) conf.set_config(ini_file)
就这样!在这个时候,guachi已经解析了配置文件并存储了这些值。
让我们通过调用我们的键来查询它们
>>> db_conf = conf.stored_config() >>> db_conf['frequency'] 60
太棒了,我们现在可以确保我们有了我们的数据。实际上,我们可以通过这种方式从我们的Twitter应用程序的任何地方获取该值
db = ConfigMapper(config_db_path) conf = db.stored_config() frequency = conf['frequency']
获取默认值
在上文中,我们检查了一个包含一些更改值的INI文件。但是当用户没有任何值时会发生什么?
由于我们设置了默认值,我们可以确保它们就在那里,以防我们的应用程序在某些子模块中需要它们
>>> db = ConfigMapper(config_db_path) >>> conf = db.stored_config() >>> conf['load'] True
更新值
如果用户进行了更改怎么办?我们总是可以在加载时保存和更新从INI文件中读取的内容,以确保我们拥有用户的最新更改
conf = ConfigMapper(config_db_path) conf.update_config(ini_file)
文档
我们的完整文档托管在这里。去看看完整的API。
项目详情
关闭
guachi-0.0.6.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a77cbb09417bd09f2d989fedbc0a0a759f8aee1cb1731a89a816218f44e0e4fb |
|
MD5 | 15c17f52dac6d34b5da416474979b4ef |
|
BLAKE2b-256 | fc1bff14ec04338cbf5558e1bd1f639ece257f69e6ef08a758c9072026f49852 |