[Python-checkins] bpo-37779 : Add information about the overriding behavior of ConfigParser.read (GH-15177)

sblondon webhook-mailer at python.org
Wed Sep 23 08:29:07 EDT 2020


https://github.com/python/cpython/commit/48b0b1b121f26f811265f9eb06f195a3df38ef4b
commit: 48b0b1b121f26f811265f9eb06f195a3df38ef4b
branch: master
author: sblondon <sblondon at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2020-09-23T14:28:58+02:00
summary:

bpo-37779 : Add information about the overriding behavior of ConfigParser.read (GH-15177)

Co-Authored-By: Kyle Stanley <aeros167 at gmail.com>
Co-Authored-By: Paul Ganssle <p.ganssle at gmail.com>

files:
M Doc/library/configparser.rst

diff --git a/Doc/library/configparser.rst b/Doc/library/configparser.rst
index 2e22a549ee281..646e8a317f52c 100644
--- a/Doc/library/configparser.rst
+++ b/Doc/library/configparser.rst
@@ -135,6 +135,30 @@ involves the ``DEFAULT`` section which provides default values for all other
 sections [1]_.  Note also that keys in sections are
 case-insensitive and stored in lowercase [1]_.
 
+It is possible to read several configurations into a single
+:class:`ConfigParser`, where the most recently added configuration has the
+highest priority. Any conflicting keys are taken from the more recent
+configuration while the previously existing keys are retained.
+
+.. doctest::
+
+   >>> another_config = configparser.ConfigParser()
+   >>> another_config.read('example.ini')
+   ['example.ini']
+   >>> another_config['topsecret.server.com']['Port']
+   '50022'
+   >>> another_config.read_string("[topsecret.server.com]\nPort=48484")
+   >>> another_config['topsecret.server.com']['Port']
+   '48484'
+   >>> another_config.read_dict({"topsecret.server.com": {"Port": 21212}})
+   >>> another_config['topsecret.server.com']['Port']
+   '21212'
+   >>> another_config['topsecret.server.com']['ForwardX11']
+   'no'
+
+This behaviour is equivalent to a :meth:`ConfigParser.read` call with several
+files passed to the *filenames* parameter.
+
 
 Supported Datatypes
 -------------------



More information about the Python-checkins mailing list