RawConfigParser
을 사용하여 ini 스타일 구성 파일을 읽고 업데이트합니다. 이것은 표준 구성에서 문제없이 작동합니다. 제 문제는 동일한 스크립트에서 다른 설정 파일을 읽는 것입니다. 너무 자세하게 설명하지 않고 두 번째 설정 파일을 읽을 때 그 값은 첫 번째 ini 파일과 병합됩니다. 모두 INI 파일python RawConfigParser
infile_1.ini
[section]
option = Original value
extraoption = not in ini file 2
inifile_2.ini
[section]
option = Original value
의
원래 내용이 내가 INI 파일의 내용을 변경하는 데 사용하는 코드입니다. 그것은이 코드가 바란대로 변경 한 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")
를 재현하는 코드의 짧은 조각입니다. 그러나 두 번째 ini 파일에서 첫 번째 ini 파일의 옵션이 병합됩니다.
infile_1.ini
[section]
option = Something New
extraoption = not in ini file 2
inifile_2.ini
[section]
option = Something New
extraoption = not in ini file 2
ConfigParser
콘텐츠 또는 다른 해결책을 다시 설정할 수있는 방법이 있습니까? ConfigParser
개체의 구성 및 해체와 관련이 있습니다. 클래스없이 시도한 후 문제가 없습니다. 저는 파이썬에서 초보자입니다. 그래서 이것을 처리하는 가장 좋은 방법이 아닐 수도 있습니다. 실제 응용 프로그램은 응용 프로그램 사용 중에 ini 파일의 수와 위치가 변경된다는 점에서 동적입니다. INI 파일 목록 os.listdir(folder)
어 ... 우리는 거의 같은 시간에 거의 같은 일을 게시했습니다. P 또한 이전/새로운 스타일 클래스 문제를 언급하는 것을 잊었 기 때문에 내 업보트를 얻었습니다. –
감사합니다 얘들 아,이 테 솔루션과 더 많은 통찰력을 줘. 이런 식으로 내 코드를 변경하고 매력처럼 작동합니다. –