在 Python 中编辑 YAML/cfg 文件时出现问题

Problem while editing YAML/cfg file in Python

我在 Python 3 中使用 configparser 来编辑文件 -

[conf]
users:
 - william
 - bill
 - johnny

我想在 users: 下添加另一个值。

我的代码如下-

from configparser import SafeConfigParser
parser = SafeConfigParser()
parser.read('config5.cfg')
a = parser.get('conf', 'users')
parser.set('conf', 'users', a + ' hank')
with open('config5.cfg', 'w') as f:
    parser.write(f)

但不是-

    users:
     - william
     - bill
     - johnny
     - hank

变成-

    users:
     - william
     - bill
     - johnny hank

我该如何解决这个问题?

非常感谢!

当你用parser.get('conf', 'users')获取用户的值时。然后输出:

'\n- william\n- bill\n- johnny'

因此您可以像这样附加新值:

parser.set('conf', 'users', old + '\n- hank')