I have a configuration file that I would like to change settings to from a python script. Here is my skeleton code:

config = ConfigParser()        
config.read('settings.conf')
config.set("SCRIPT", "SOMEFIELD", "%s"%SOMEVALUE)
config.write(open("settings.conf","wb"))

This works fine, however it writes everything to one line. I might be being a bit picky, but would like to have new lines after each configurations field and section so that the file is human readable.

有帮助吗?

解决方案

You are telling python to write a binary file ("b" char on 2nd arg of your open() call).

Use

config.write(open("settings.conf","w"))

Or better:

with open("settings.conf","w") as settings_file:
    config.write(settings_file)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top