python - Python - 解析 INI 文本(不是 INI 文件)
问题描述
我有一个案例,我得到一个 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。
解决方案
您必须使用read_string
才能解析字符串。
那么你必须在“config”对象上使用getter,例如:
>>> config.get('dev', 'Host')
'abc.com'
或者
>>> config.getfloat(config.default_section, 'Score')
0.1
推荐阅读
- java - 有没有办法为java中的不同逻辑捕获相同的两个异常?
- python - 使用 python urllib.parse 在 sftp url 中解析相对路径
- sql - SQL Server 2012 - 动态分组
- ruby-on-rails-5 - 当我单击提交按钮时,它不会转到提到的 url。它对rails没有影响。搜索过滤器不起作用
- postgresql - Objectio.js如何设置一个连接池或者一个没有连接池的连接来共享TEMPORARY TABLE?
- vba - Outlook VBA 未更新后续标志
- vue.js - nuxt/vuetify 包中与 Vuetify 相关的 NPM 构建错误?
- python - 在熊猫数据框中的每个时间序列的第一次和最后一次出现之前和之后对 NaN 值进行切片
- django - 如何让 tox 和诗歌协同工作以支持测试 Python 依赖项的多个版本?
- r - 为什么 tryCatch 不是确定性的?