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感谢链接,我修改了我的问题,并提供了一个更好的示例,您可以使用它重现问题。