Python 如何使用ConfigObj附加到现有配置文件?

Python 如何使用ConfigObj附加到现有配置文件?,python,python-3.x,configobj,Python,Python 3.x,Configobj,我正试图使用ConfigObj使用函数写入配置文件 #!/usr/bin/evn python3.5 import configobj def createConfig(path): config = configobj.ConfigObj() config.filename = path config[REFNAME] = {} config[REFNAME]['URL'] = URL config.write() REFNAME = input(

我正试图使用
ConfigObj
使用函数写入配置文件

#!/usr/bin/evn python3.5

import configobj

def createConfig(path):
    config = configobj.ConfigObj()
    config.filename = path
    config[REFNAME] = {}
    config[REFNAME]['URL'] = URL
    config.write()

REFNAME = input("Enter a reference name :")
URL= input("Enter a URL :")

createConfig('server.ini')

调用函数
createConfig()
时,将写入配置文件,但是,如果脚本再次运行,它将覆盖先前创建的配置文件。我希望保留以前的entires,并且仅将其添加到文件中,或者在提供相同的
REFNAME
时进行覆盖

我无法理解如何从文档中执行此操作:


任何帮助都将不胜感激

如果将设置文件的路径与
create\u empty=True
参数一起传递给
ConfigObj()
初始值设定项,则仅当文件不存在时,它才会创建空文件,从而允许更新任何现有文件

文档的一节对此进行了解释,其中描述了该方法接受的关键字参数

import configobj

def createConfig(path):
    config = configobj.ConfigObj(path, create_empty=True)
    config[REFNAME] = {}
    config[REFNAME]['URL'] = URL
    config.write()

REFNAME = input("Enter a reference name: ")
URL= input("Enter a URL: ")

createConfig('server.ini')

注意:您可能希望将函数名更改为
openConfig()
,因为它现在就是这样做的。

您需要提供一个可以运行的函数名来重现问题。@martineau感谢链接,我修改了我的问题,并提供了一个更好的示例,您可以使用它重现问题。