在过去的几年里,我主要使用django。Django使用环境变量DJANGO_SETTINGS_MODULE来查找其配置。
现在我有一个项目,其中我不使用django,我希望有一种干净和易于理解的方式来加载配置。
示例:
我想要一个全局布尔值来打开或关闭调试:
settings.DEBUG我想有成千上万种方法可以做到这一点。
但是,存储和加载项目设置的最具pythonic风格的方式是什么?
..。也许Python社区已经采用了一种广为人知的默认方式,我只是还不知道。
发布于 2016-04-28 23:23:52
来自:https://docs.python.org/2/library/constants.html
使用全局不可变常量
__debug__如果Python不是使用-O选项启动的,则此常量为真。
如果要设置日志记录级别,请使用logging.setLevel(lvl):https://docs.python.org/2/library/logging.html#logging.Logger.setLevel
更新:
对于一般的全局常量,我会使用一个单例,也就是一个模块来存储你需要的常量。即创建一个模块config.py
DEBUG = False
OTHER_THING = True从其他模块中,您可以
import config
print(config.DEBUG)发布于 2016-05-03 20:42:08
在我看来,最典型的方式是使用ConfigParser。它提供了人们可能需要的不同访问协议,以及不同的适配器(例如JSON)。
此外,它允许轻松定制,有完整的文档,并且它集成在其他工具中,如logging。
使用ConfigParser进行文件配置的logging工具的示例位于logging manual pages上。我通常为日志配置保留一个单独的文件,但也可以使用一个文件来完成整个项目。
https://stackoverflow.com/questions/36918010
复制相似问题