How do I put a semicolon in a value in python configparser?
巨蟒-2.7
我有一个python配置解析器,它有一个部分,其中键是url,值是令牌。作为url的键包含:,-?其他各种字符也同样适用于值。从上面的问题可以看出,值部分中的特殊字符似乎很好,但键似乎不好。
对此我能做些什么吗?我的替代方案是解析为json文件并手动编写/读取它。
例如,如果在我得到
cp = ConfigParser.ConfigParser()
cp.add_section("section")
cp.set("section", "http://myhost.com:9090", "user:id:token")
cp.set("section", "key2", "value2")
with open(os.path.expanduser("~/test.ini"), "w") as f:
cp.write(f)
cp = ConfigParser.ConfigParser()
cp.read(os.path.expanduser("~/test.ini"))
print cp.get("section", "key2")
print cp.get("section", "http://myhost.com:9090")
文件如下所示
[section]
http://myhost.com:9090 = user:id:token
key2 = value2
我也有例外
ConfigParser.NoOptionError: No option 'http://myhost.com:9090' in section: 'section'
最佳答案
Python 2.7上的ConfigParser
是硬编码的,可以将冒号和等号都识别为键和值之间的分隔符。当前的Python 3configparser
模块允许您自定义分隔符。Python 2.6-2.7的后台端口在https://pypi.python.org/pypi/configparser