Document file.next(). Mark xreadlines obsolete (both method and

module).  (One thing remains to be done: the gzip class has an
xreadline method; this ought to be replaced by an iterator as well.)
This commit is contained in:
Guido van Rossum 2002-08-06 17:01:28 +00:00
parent 817918cc3c
commit 0fc01865f3
2 changed files with 26 additions and 9 deletions

View File

@ -1122,12 +1122,6 @@ Files have the following methods:
objects.
\end{methoddesc}
\begin{methoddesc}[file]{isatty}{}
Return \code{True} if the file is connected to a tty(-like) device, else
\code{False}. \note{If a file-like object is not associated
with a real file, this method should \emph{not} be implemented.}
\end{methoddesc}
\begin{methoddesc}[file]{fileno}{}
\index{file descriptor}
\index{descriptor, file}
@ -1141,6 +1135,29 @@ Files have the following methods:
this method!}
\end{methoddesc}
\begin{methoddesc}[file]{isatty}{}
Return \code{True} if the file is connected to a tty(-like) device, else
\code{False}. \note{If a file-like object is not associated
with a real file, this method should \emph{not} be implemented.}
\end{methoddesc}
\begin{methoddesc}[file]{next}{}
A file object is its own iterator, i.e. \code{iter(\var{f})} returns
\var{f} (unless \var{f} is closed). When a file is used as an
iterator, typically in a \keyword{for} loop (for example,
\code{for line in f: print line}), the \method{next()} method is
called repeatedly. This method returns the next input line, or raises
\exception{StopIteration} when \EOF{} is hit. In order to make a
\keyword{for} loop the most efficient way of looping over the lines of
a file (a very common operation), the \method{next()} method uses a
hidden read-ahead buffer. As a consequence of using a read-ahead
buffer, combining \method{next()} with other file methods (like
\method{readline()}) does not work right. However, using
\method{seek()} to reposition the file to an absolute position will
flush the read-ahead buffer.
\versionadded{2.3}
\end{methoddesc}
\begin{methoddesc}[file]{read}{\optional{size}}
Read at most \var{size} bytes from the file (less if the read hits
\EOF{} before obtaining \var{size} bytes). If the \var{size}
@ -1184,10 +1201,9 @@ Files have the following methods:
\end{methoddesc}
\begin{methoddesc}[file]{xreadlines}{}
Equivalent to
\function{xreadlines.xreadlines(\var{file})}.\refstmodindex{xreadlines}
(See the \refmodule{xreadlines} module for more information.)
This method returns the same thing as \code{iter(f)}.
\versionadded{2.1}
\deprecated{2.3}{Use \code{for line in file} instead.}
\end{methoddesc}
\begin{methoddesc}[file]{seek}{offset\optional{, whence}}

View File

@ -6,6 +6,7 @@
\versionadded{2.1}
\deprecated{2.3}{Use \code{for line in file} instead.}
This module defines a new object type which can efficiently iterate
over the lines of a file. An xreadlines object is a sequence type