From: Barry Warsaw Date: Wed, 22 May 2002 20:39:43 +0000 (+0000) Subject: Jack's documentation for the U mode character on the file() X-Git-Tag: v2.3c1~5613 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=177b4a065f121e70a43928b27bf845009944f070;p=python Jack's documentation for the U mode character on the file() constructor, vetted by Barry. --- diff --git a/Doc/lib/libfuncs.tex b/Doc/lib/libfuncs.tex index 158ea0c9c8..6ac17d1a8d 100644 --- a/Doc/lib/libfuncs.tex +++ b/Doc/lib/libfuncs.tex @@ -345,6 +345,21 @@ def my_import(name): that differentiate between binary and text files (else it is ignored). If the file cannot be opened, \exception{IOError} is raised. + + In addition to the standard \cfunction{fopen()} values \var{mode} + may be \code{'U'} or \code{'rU'}. If Python is built with universal + newline support (the default) the file is opened as a text file, but + lines may be terminated by any of \code{'\e n'}, the Unix end-of-line + convention, + \code{'\e r'}, the Macintosh convention or \code{'\e r\e n'}, the Windows + convention. All of these external representations are seen as + \code{'\e n'} + by the Python program. If Python is built without universal newline support + \var{mode} \code{'U'} is the same as normal text mode. Note that + file objects so opened also have an attribute called + \member{newlines} which has a value of \code{None} (if no newlines + have yet been seen), \code{'\e n'}, \code{'\e r'}, \code{'\e r\e n'}, + or a tuple containing all the newline types seen. If \var{mode} is omitted, it defaults to \code{'r'}. When opening a binary file, you should append \code{'b'} to the \var{mode} value diff --git a/Doc/lib/libstdtypes.tex b/Doc/lib/libstdtypes.tex index 143b05ae54..55e77a7a04 100644 --- a/Doc/lib/libstdtypes.tex +++ b/Doc/lib/libstdtypes.tex @@ -1248,6 +1248,18 @@ file object, of the form \samp{<\mbox{\ldots}>}. This is a read-only attribute and may not be present on all file-like objects. \end{memberdesc} +\begin{memberdesc}[file]{newlines} +If Python was built with the \code{--with-universal-newlines} option +(the default) this read-only attribute exists, and for files opened in +universal newline read mode it keeps track of the types of newlines +encountered while reading the file. The values it can take are +\code{'\e r'}, \code{'\e n'}, \code{'\e r\e n'}, \code{None} (unknown, +no newlines read yet) or a tuple containing all the newline +types seen, to indicate that multiple +newline conventions were encountered. For files not opened in universal +newline read mode the value of this attribute will be \code{None}. +\end{memberdesc} + \begin{memberdesc}[file]{softspace} Boolean that indicates whether a space character needs to be printed before another value when using the \keyword{print} statement.