在某些情况下,我得到的是INI文件的字符串版本,而不是文件本身。我是从外部来源以这种方式获取的,因此无法更改。
字符串版本的示例:
'[DEFAULT]\nScore = 0.1\n\n[dev]\nHost = abc.com\nPort = 0000\n\n[qa]\nHost = xyz.com\nEsPort = 1000\n\n[main]\nHost = pqr.com\nPort = 2000\n'
我尝试使用python中的configParser库解析此字符串:
>>> config = configparser.ConfigParser()
>>> config.read(my_ini_str)
[]
使用读取功能无法获得任何回报。还有其他方法可以实现这一目标吗?
谢谢!
更新-忘记添加我正在使用Python 2。
答案 0 :(得分:0)
这就是read_string()
方法的作用。
从字符串中解析配置数据。
因此:
>>> config = configparser.ConfigParser()
>>> config.read_string(my_ini_str)
答案 1 :(得分:0)
您必须使用>>> config.get('dev', 'Host')
'abc.com'
才能解析字符串。
然后,您必须在“ config”对象上使用吸气剂,例如:
>>> config.getfloat(config.default_section, 'Score')
0.1
或
{{1}}