【发布时间】:2011-02-21 03:17:57
【问题描述】:
我正在尝试使用 python 根据从主配置文件中获取的值将一组模板转换为一组配置文件。但是,我遇到了某些问题。考虑以下模板文件示例。
file1.cfg.template
%(CLIENT1)s %(HOST1)s %(PORT1)d C %(COMPID1)s
%(CLIENT2)s %(HOST2)s %(PORT2)d C %(COMPID2)s
此文件包含每个客户端的条目。有数百个这样的配置文件,我不想对每种类型的配置文件都有逻辑。给定从主 xml 配置文件读取的一组全局值,Python 应该自动替换并生成配置文件。但是,在上面的示例中,如果 CLIENT2 不存在,如何删除该行?我希望 Python 会使用这样的东西生成配置文件:
os.open("file1.cfg.template").read() % myhash
其中 myhash 是来自主配置文件的配置参数的哈希,可能根本不包含 CLIENT2。如果它不包含 CLIENT2,我希望该行从文件中消失。是否可以在文件中插入一些 'IF' 块并让 python 评估它?
感谢您的帮助。欢迎提出任何建议。
【问题讨论】:
-
如果有人可以在 python 或第三方框架中举例说明如何实现这种确切的行为,那就太棒了。
标签: python