Jon*_*han 1 python projects constants
在Python中的各种项目之间共享配置参数\ settings\constants的简洁方法是什么?
使用数据库似乎有点矫枉过正.使用文件提出了哪个项目应该在其源代码控制中托管文件的问题...
我愿意接受建议:)
更新:
为了澄清 - 假设各种项目在不同系统上的部署方式不同.在某些情况下,在不同的目录中,在其他情况下,有些项目在那里,有些则没有.
我发现在许多情况下,使用配置文件确实值得(轻微)麻烦.内置ConfigParser模块非常方便,特别是它很容易解析多个文件并让模块将它们合并在一起,文件中的值会在以后解析后覆盖先前解析的文件中的值.这允许容易地使用全局文件(例如/etc/yoursoftware/main.ini)和每用户文件(〜/ .yoursoftware/main.ini).
然后,每个项目都会打开配置文件并从中读取值.
这是一个小代码示例:
basefile.ini:
[sect1]
value1=1
value2=2
Run Code Online (Sandbox Code Playgroud)
overridingfile.ini:
[sect1]
value1=3
Run Code Online (Sandbox Code Playgroud)
configread.py:
#!/usr/bin/env python
from ConfigParser import ConfigParser
config = ConfigParser()
config.read(["basefile.ini", "overridingfile.ini"])
print config.get("sect1", "value1")
print config.get("sect1", "value2")
Run Code Online (Sandbox Code Playgroud)
运行它会打印出来:
3
2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1302 次 |
| 最近记录: |