diff options
author | Ezio Melotti <ezio.melotti@gmail.com> | 2013-04-15 16:08:31 (GMT) |
---|---|---|
committer | Ezio Melotti <ezio.melotti@gmail.com> | 2013-04-15 16:08:31 (GMT) |
commit | ed3cd7e445e7be413d1b454471454f7ff9f21f1f (patch) | |
tree | 146e7c94d722abcfe6fc1a693be999328ebdf71d /Doc/tutorial | |
parent | 45fe62dc9c406f1c2520867d99e557ac227f9bfb (diff) | |
download | cpython-ed3cd7e445e7be413d1b454471454f7ff9f21f1f.zip cpython-ed3cd7e445e7be413d1b454471454f7ff9f21f1f.tar.gz cpython-ed3cd7e445e7be413d1b454471454f7ff9f21f1f.tar.bz2 |
#13510: clarify that f.readlines() is note necessary to iterate over a file. Patch by Dan Riti.
Diffstat (limited to 'Doc/tutorial')
-rw-r--r-- | Doc/tutorial/inputoutput.rst | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/Doc/tutorial/inputoutput.rst b/Doc/tutorial/inputoutput.rst index c804e25..ef22459 100644 --- a/Doc/tutorial/inputoutput.rst +++ b/Doc/tutorial/inputoutput.rst @@ -300,18 +300,8 @@ containing only a single newline. :: >>> f.readline() '' -``f.readlines()`` returns a list containing all the lines of data in the file. -If given an optional parameter *sizehint*, it reads that many bytes from the -file and enough more to complete a line, and returns the lines from that. This -is often used to allow efficient reading of a large file by lines, but without -having to load the entire file in memory. Only complete lines will be returned. -:: - - >>> f.readlines() - ['This is the first line of the file.\n', 'Second line of the file\n'] - -An alternative approach to reading lines is to loop over the file object. This is -memory efficient, fast, and leads to simpler code:: +For reading lines from a file, you can loop over the file object. This is memory +efficient, fast, and leads to simple code:: >>> for line in f: ... print(line, end='') @@ -319,9 +309,8 @@ memory efficient, fast, and leads to simpler code:: This is the first line of the file. Second line of the file -The alternative approach is simpler but does not provide as fine-grained -control. Since the two approaches manage line buffering differently, they -should not be mixed. +If you want to read all the lines of a file in a list you can also use +``list(f)`` or ``f.readlines()``. ``f.write(string)`` writes the contents of *string* to the file, returning the number of characters written. :: |