This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Title: configparse module in python3 can not write '%' to config file
Type: behavior Stage: resolved
Components: Versions: Python 3.6
Status: closed Resolution: not a bug
Dependencies: Superseder:
Assigned To: Nosy List: lukasz.langa, mcepl, quanyechavshuo
Priority: normal Keywords:

Created on 2017-06-26 09:48 by quanyechavshuo, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Messages (3)
msg296865 - (view) Author: quanyechavshuo (quanyechavshuo) Date: 2017-06-26 09:48
Hello,I was using configparser module in python3.6,but find it works not good when I try to write '%' to my config file,below is my func:

def update_config_file_key_value(file, section, key_name, key_value):
    # 通过configparser模块的调用更新配置文件
    # section是[]里面的值
    if os.path.exists(file) == False:
        os.system("touch %s" % file)
    import configparser
    config = configparser.ConfigParser()
    sectionList = config.sections()
    if section not in sectionList:
    config.set(section, key_name, str(key_value))
    with open(file, 'w') as f:

When I use it as:
it works well,but below not ok:
and below not ok:
and below not ok:

That's to say,configparser can not write '%' to config file.
msg298204 - (view) Author: Łukasz Langa (lukasz.langa) * (Python committer) Date: 2017-07-12 12:08
With the default ConfigParser, we're using basic interpolation, as covered by:

To not have it, set interpolation to None in the ConfigParser constructor:

    config = configparser.ConfigParser(interpolation=None)

Then percent signs will be treated like any other character. Let me know if you have further questions.
msg313245 - (view) Author: Matej Cepl (mcepl) * Date: 2018-03-05 12:04
Lukasz, this bug could be closed, couldn't it?
Date User Action Args
2022-04-11 14:58:48adminsetgithub: 74945
2018-04-02 17:52:06lukasz.langasetstatus: open -> closed
resolution: not a bug
stage: resolved
2018-03-05 12:04:24mceplsetnosy: + mcepl
messages: + msg313245
2017-07-12 12:08:13lukasz.langasetmessages: + msg298204
2017-06-29 18:41:36r.david.murraysetnosy: + lukasz.langa
2017-06-26 09:48:10quanyechavshuocreate