考虑使用普通的Python文件作为配置文件。
范例(
config.py):
# use normal python commentsvalue1 = 32value2 = "A string value"value3 = ["lists", "are", "handy"]value4 = {"and": "so", "are": "dictionaries"}在您的程序中,使用
exec(docs)加载配置文件:
from pathlib import Pathif __name__ == "__main__": config = {} exec(Path("config.py").read_text(encoding="utf8"), {}, config) print config["value1"] print config["value4"]我喜欢这种方法,原因如下:
- 在简单的情况下,格式就像INI样式的配置文件一样易于编写。它还与INI文件具有一个重要特征:非常适用于版本控制(对于XML和JSON而言不太正确)
- 我喜欢使用实际编程语言编写配置文件所带来的灵活性。
该方法被广泛使用,例如:
- Django网站的设置位于settings.py中。Django不使用
execfile
,它用于import
读取/执行settings.py
AFAIK,但是最终结果是相同的:执行了设置文件中的代码。 - bash shell会
~/.bashrc
在启动时读取并执行。 - Python解释器
site.py
在启动时导入。



