【发布时间】:2017-12-30 03:05:07
【问题描述】:
我需要使用使用等号的键值对的嵌套 HTML 样式标记的配置文件。
我想要一种 Python 方法,它允许我读取此类文件、添加、删除或修改部分,以及编写更新的文件。
文件看起来像:
<tag1>
key1=value1
key2=value2
<tag2>
key3=value3
</tag2>
<tag2>
key3=value four
</tag2>
</tag1>
所以它不是一个 HTML 或 XML 文件,也不是一个 Windows INI 文件。等号周围没有空格,文件中有一些似乎被忽略的随机空行,键值对中的值不使用引号并且可能嵌入了空格。
我找不到这个确切文件结构的定义或名称,但我发现很难集中搜索,所以我可能遗漏了一些明显的东西。
这是公认的标准文件结构吗?如果有,它叫什么?
我很感激任何关于可以强制哪些库使用此结构的指针,如果在 docco 中没有现成的可用示例,我可能会提供一些示例。
谢谢。
【问题讨论】:
-
你期望的输出格式是什么
-
格式就是普通的xml。可以使用简单的字符串操作(即
splitlines()和partition('='))来解析每个标签的文本内容。 -
@Shiva:谢谢!输出格式与输入相同。我应该澄清一下,我正在处理的文件是第三方应用程序使用的一个非常大(5k - 10k 行)的文件,我想系统地添加、删除一个更改元素。
-
@ekhumoro:谢谢!我没有想到使用 XML 解析器,然后将 key=value 对作为文本使用。很明显,现在你指出来了。我试试看。