cpython: f17a1410ebe5 (original) (raw)
Mercurial > cpython
changeset 78401:f17a1410ebe5
Make TextIOWrapper's documentation clearer by copying the newline argument's description from open().
Antoine Pitrou solipsis@pitrou.net | |
---|---|
date | Sat, 04 Aug 2012 00:56:19 +0200 |
parents | 593eba5e867c(current diff)f19bea7bbee7(diff) |
children | 083776adcacc |
files | Doc/library/io.rst Modules/_io/textio.c |
diffstat | 2 files changed, 32 insertions(+), 17 deletions(-)[+] [-] Doc/library/io.rst 24 Modules/_io/textio.c 25 |
line wrap: on
line diff
--- a/Doc/library/io.rst
+++ b/Doc/library/io.rst
@@ -767,14 +767,22 @@ Text I/O
sequences) can be used. Any other error handling name that has been
registered with :func:codecs.register_error
is also valid.
- newline can be
None
,''
,'\n'
,'\r'
, or'\r\n'
. It - controls the handling of line endings. If it is
None
, universal newlines - is enabled. With this enabled, on input, the lines endings
'\n'
, '\r'
, or'\r\n'
are translated to'\n'
before being returned to- the caller. Conversely, on output,
'\n'
is translated to the system - default line separator, :data:
os.linesep
. If newline is any other of its - legal values, that newline becomes the newline when the file is read and it
- is returned untranslated. On output,
'\n'
is converted to the newline.
- newline controls how line endings are handled. It can be
None
, ''
,'\n'
,'\r'
, and'\r\n'
. It works as follows: +Lines in the input can end in ``'\n'``, ``'\r'``, or ``'\r\n'``, and these[](#l1.19)
are translated into ``'\n'`` before being returned to the caller. If it is[](#l1.20)
``''``, universal newline mode is enabled, but line endings are returned to[](#l1.21)
the caller untranslated. If it has any of the other legal values, input[](#l1.22)
lines are only terminated by the given string, and the line ending is[](#l1.23)
returned to the caller untranslated.[](#l1.24)
translated to the system default line separator, :data:`os.linesep`. If[](#l1.27)
*newline* is ``''``, no translation takes place. If *newline* is any of[](#l1.28)
the other legal values, any ``'\n'`` characters written are translated to[](#l1.29)
the given string.[](#l1.30)
If line_buffering is True
, :meth:flush
is implied when a call to
write contains a newline character.
--- a/Modules/_io/textio.c +++ b/Modules/_io/textio.c @@ -635,15 +635,22 @@ PyDoc_STRVAR(textiowrapper_doc, "errors determines the strictness of encoding and decoding (see the\n" "codecs.register) and defaults to "strict".\n" "\n"
- "newline can be None, '', '\n', '\r', or '\r\n'. It controls the\n"
- "handling of line endings. If it is None, universal newlines is\n"
- "enabled. With this enabled, on input, the lines endings '\n', '\r',\n"
- "or '\r\n' are translated to '\n' before being returned to the\n"
- "caller. Conversely, on output, '\n' is translated to the system\n"
- "default line separator, os.linesep. If newline is any other of its\n"
- "legal values, that newline becomes the newline when the file is read\n"
- "and it is returned untranslated. On output, '\n' is converted to the\n"
- "newline.\n"
- "newline controls how line endings are handled. It can be None, '',\n"
- "'\n', '\r', and '\r\n'. It works as follows:\n"
- "\n"
- "* On input, if newline is None, universal newlines mode is\n"
- " enabled. Lines in the input can end in '\n', '\r', or '\r\n', and\n"
- " these are translated into '\n' before being returned to the\n"
- " caller. If it is '', universal newline mode is enabled, but line\n"
- " endings are returned to the caller untranslated. If it has any of\n"
- " the other legal values, input lines are only terminated by the given\n"
- " string, and the line ending is returned to the caller untranslated.\n"
- "\n"
- "* On output, if newline is None, any '\n' characters written are\n"
- " translated to the system default line separator, os.linesep. If\n"
- " newline is '', no translation takes place. If newline is any of the\n"
- " other legal values, any '\n' characters written are translated to\n"
- " the given string.\n" "\n" "If line_buffering is True, a call to flush is implied when a call to\n" "write contains a newline character."