小编Joh*_*ieu的帖子

python RawConfigParser

我正在使用RawConfigParser来读取和更新 ini 样式的配置文件。这在标准配置中完全没有问题。我的问题是我在同一个脚本中读取不同的配置文件。无需过多赘述,当我阅读第二个配置文件时,它的值与第一个 ini 文件合并。

两个 ini 文件的原始内容

infile_1.ini
[section]
option = Original value
extraoption = not in ini file 2

inifile_2.ini
[section]
option = Original value
Run Code Online (Sandbox Code Playgroud)

这是我用来更改 ini 文件内容的代码。这是重现问题的一小段代码

import ConfigParser

class status_file:
   myConfig = ConfigParser.RawConfigParser()
   myConfig.optionxform = str

   def __init__(self, str_statusfile):
      self.myConfig.read( str_statusfile)
      self.statusfile = str_statusfile

   def option(self, new_value):
      self.myConfig.set("section","option",new_value)
      with open( self.statusfile, "w") as ini_out:
            self.myConfig.write( ini_out )


statusfiles = ['inifile_1.ini', 'inifile_2.ini']
for myStatus in statusfiles:
   myConfig = status_file(myStatus)
   myConfig.option("Something new")
Run Code Online (Sandbox Code Playgroud)

执行此代码后,ini 文件的内容已按预期更改。但是在第二个 ini 文件中,合并了第一个 …

python class configuration-files configparser

5
推荐指数
1
解决办法
3380
查看次数

标签 统计

class ×1

configparser ×1

configuration-files ×1

python ×1