Python 相当于 PHP parse_ini_string

Python equivalent to PHPs parse_ini_string

我目前正在将 PHP 脚本移植到 Python 以学习 Python。 但目前我被卡住了,因为我正在调用一个 API,它总是 returns 一个 ini-formatted 回答如下:

error=0
---
asin=
name=Haftnotizen
detailname=info flags Haftnotizen
vendor=GlobalNotes
maincat=Haushalt, Büro
---

我已经学会了可以使用ConfigParser来解析ini-files。 但在这种情况下,ini-answer 没有标题(this solution 不会有问题)并且还有这些 --- 分隔符。

我现在的代码是:

import configparser

with open('test.ini', 'r') as f:
    config_string = '[dummy_section]\n' + f.read()
config = configparser.ConfigParser()
config.read_string(config_string)

但不幸的是,它向我抛出以下错误消息:

configparser.ParsingError: Source contains parsing errors: '<string>'
        [line  3]: '---\n'
        [line  9]: '---'

如何忽略这些行? (另外,他们并不总是在同一行)

我不知道下一步该怎么做,任何帮助将不胜感激!

它并不漂亮,但如果错误字符串始终完全相同,您可以从数据中删除该子字符串。你会这样做:

config_string = config_string.replace("---", "")