如何使用 ConfigParser 中已定义的变量
我在 Python
config.ini 中使用 ConfigParser 在
[general]
name: my_name
base_dir: /home/myhome/exp
exe_dir: ${base_dir}/bin
这里我希望 exp_dir
变成 /home/myhome/exp/bin
而不是 ${base_dir}/bin
代码>.
这意味着 ${base_dir}
将自动替换为 /home/myhome/exp
。
I'm using ConfigParser in Python
config.ini is
[general]
name: my_name
base_dir: /home/myhome/exp
exe_dir: ${base_dir}/bin
Here I want exp_dir
becomes /home/myhome/exp/bin
not ${base_dir}/bin
.
It means ${base_dir}
would be substituted to /home/myhome/exp automatically
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以使用 ConfigParser 插值
你的例子变成:
You can use ConfigParser interpolation
Your example becomes:
写“%(foo)s”而不是“${foo}”。 (请参阅 http://docs.python.org/library/configparser.html 并搜索“插值”。这适用于普通的 ConfigParser 或 SafeConfigParser。)
Instead of "${foo}", write "%(foo)s". (See http://docs.python.org/library/configparser.html and search for "interpolation". This works for either an ordinary ConfigParser or a SafeConfigParser.)
在 Python 3 中,您可以使用
${base_dir}/bin
和 扩展插值允许您使用其他部分的变量。例子:In Python 3, you can use
${base_dir}/bin
, and the extended interpolation allows you to use variables from other sections. Example: