如何使用 ConfigObj 附加到现有配置文件?
How to append to existing config file using 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("Enter a reference name :")
URL= input("Enter a URL :")
createConfig('server.ini')
调用函数 createConfig()
时会写入配置文件,但是,如果脚本再次运行,它会覆盖之前创建的配置文件。我想保留以前的全部内容,只添加到文件中,或者如果提供了相同的 REFNAME
则覆盖。
我无法从文档中理解如何执行此操作:
https://configobj.readthedocs.io/en/latest/configobj.html
如有任何帮助,我们将不胜感激。
如果您将设置文件的路径与 create_empty=True
参数一起传递给 ConfigObj()
初始化器,它只会在文件不存在时创建一个空文件——从而允许要更新的任何现有文件。
这在文档的 ConfigObj specifications 部分进行了解释,其中描述了该方法接受的关键字参数。
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()
,因为它现在就是这样做的。
我正在尝试使用 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()
时会写入配置文件,但是,如果脚本再次运行,它会覆盖之前创建的配置文件。我想保留以前的全部内容,只添加到文件中,或者如果提供了相同的 REFNAME
则覆盖。
我无法从文档中理解如何执行此操作:
https://configobj.readthedocs.io/en/latest/configobj.html
如有任何帮助,我们将不胜感激。
如果您将设置文件的路径与 create_empty=True
参数一起传递给 ConfigObj()
初始化器,它只会在文件不存在时创建一个空文件——从而允许要更新的任何现有文件。
这在文档的 ConfigObj specifications 部分进行了解释,其中描述了该方法接受的关键字参数。
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()
,因为它现在就是这样做的。