diff options
author | Łukasz Langa <lukasz@langa.pl> | 2011-04-27 16:10:05 (GMT) |
---|---|---|
committer | Łukasz Langa <lukasz@langa.pl> | 2011-04-27 16:10:05 (GMT) |
commit | daab1c80928108a3b2ddf19c0245fe15af1b1fd3 (patch) | |
tree | a45cada2685b2b8067b975d31649e8d294d60509 /Doc/library/configparser.rst | |
parent | 944d16c6c490f5e3933f8a729d810f60d3bab1d3 (diff) | |
download | cpython-daab1c80928108a3b2ddf19c0245fe15af1b1fd3.zip cpython-daab1c80928108a3b2ddf19c0245fe15af1b1fd3.tar.gz cpython-daab1c80928108a3b2ddf19c0245fe15af1b1fd3.tar.bz2 |
Closes #11670: configparser read_file now iterates over f.
Diffstat (limited to 'Doc/library/configparser.rst')
-rw-r--r-- | Doc/library/configparser.rst | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/Doc/library/configparser.rst b/Doc/library/configparser.rst index cb6f259..fbc593b 100644 --- a/Doc/library/configparser.rst +++ b/Doc/library/configparser.rst @@ -974,18 +974,37 @@ ConfigParser Objects .. method:: read_file(f, source=None) - Read and parse configuration data from the file or file-like object in - *f* (only the :meth:`readline` method is used). The file-like object - must operate in text mode. Specifically, it must return strings from - :meth:`readline`. + Read and parse configuration data from *f* which must be an iterable + yielding Unicode strings (for example any file object). Optional argument *source* specifies the name of the file being read. If not given and *f* has a :attr:`name` attribute, that is used for *source*; the default is ``'<???>'``. .. versionadded:: 3.2 - Replaces :meth:`readfp`. + Replaces :meth:`readfp`. + + .. note:: + + Prior to Python 3.2, :meth:`readfp` consumed lines from the file-like + argument by calling its :meth:`~file.readline` method. For existing code + calling :meth:`readfp` with arguments which don't support iteration, + the following generator may be used as a wrapper around the file-like + object:: + def readline_generator(f): + line = f.readline() + while line != '': + yield line + line = f.readline() + + Before:: + + parser.readfp(f) + + After:: + + parser.read_file(readline_generator(f)) .. method:: read_string(string, source='<string>') |