从另一个ini节引用变量
可以在一个ini文件的某个部分引用另一个部分的变量吗?
我知道你可以这样做:
[env]
dir = /home/a
dir2 = %(dir)s/b
但是如果我有两个部分,想要引用另一个部分的变量,那该怎么做呢?
[env]
name = DEV
[dir]
home = /home/<name from env here>/scripts
谢谢
2 个回答
0
Python 2.x不支持从其他部分进行交叉引用。
不过,你可以使用[DEFAULT]。这个部分里的定义是可以共享的,特别适合这样使用。
11
可以查看关于 configparser
的文档。创建一个支持扩展插值的解析器。使用 ${section:option}
这种语法可以引用其他部分的选项。
from configparser import ConfigParser, ExtendedInterpolation
parser = ConfigParser(interpolation=ExtendedInterpolation())
parser.read_string('''[env]
name = DEV
[dir]
home = /home/${env:name}/scripts
''')
print(parser['dir']['home'])