所以,我有这个settings.ini:
[SETTINGS]
value = 1
这个python脚本
from ConfigParser import SafeConfigParser
parser = SafeConfigParser()
parser.read('settings.ini')
print parser.get('SETTINGS', 'value')
正如您所看到的,我想阅读然后更换值" 1"另一个。我到目前为止所能做的就是阅读它。我在网上搜索了如何替换它,但我找不到。
答案 0 :(得分:19)
从文档的例子中可以看出:
https://docs.python.org/2/library/configparser.html
parser.set('SETTINGS', 'value', '15')
# Writing our configuration file to 'example.ini'
with open('example.ini', 'wb') as configfile:
parser.write(configfile)
答案 1 :(得分:1)
以下示例将帮助更改ini文件中的值:
PROJECT_HOME="/test/"
parser = ConfigParser()
parser.read("{}/conf/cdc_config.ini".format(PROJECT_HOME))
parser.set("default","project_home",str(PROJECT_HOME))
with open('{}/conf/cdc_config.ini'.format(PROJECT_HOME), 'w') as configfile:
parser.write(configfile)
[default]
project_home = /Mypath/
答案 2 :(得分:1)
Python 的官方 docs on configparser
说明了如何读取、修改和编写配置文件。
import configparser
config = configparser.ConfigParser()
config.read('settings.ini')
config.set('SETTINGS', 'value','15')
with open('settings.ini', 'w') as configfile:
config.write(configfile)
答案 3 :(得分:0)
我遇到了一个问题:with open
其他方式:
import configparser
def set_value_in_property_file(file_path, section, key, value):
config = configparser.RawConfigParser()
config.read(file_path)
config.set(section,key,value)
cfgfile = open(file_path,'w')
config.write(cfgfile, space_around_delimiters=False) # use flag in case case you need to avoid white space.
cfgfile.close()
它可用于修改Java属性文件:file.properties