Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
a801b6a1
Commit
a801b6a1
authored
Apr 27, 2007
by
Brett Cannon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Backport r54712: document that calling file.next() on a file open for writing
leads to undefined behaviour.
parent
c22aee03
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
8 deletions
+16
-8
Doc/lib/libstdtypes.tex
Doc/lib/libstdtypes.tex
+9
-8
Misc/NEWS
Misc/NEWS
+7
-0
No files found.
Doc/lib/libstdtypes.tex
View file @
a801b6a1
...
...
@@ -1615,14 +1615,15 @@ A file object is its own iterator, for example \code{iter(\var{f})} returns
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.
\exception
{
StopIteration
}
when
\EOF
{}
is hit when the file is open for
reading (behavior is undefined when the file is open for writing). 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}
...
...
Misc/NEWS
View file @
a801b6a1
...
...
@@ -25,6 +25,13 @@ Library
run in verbose mode.
Documentation
-------------
- Bug #1569057: Document that calling file.next() on a file open for writing
has undefined behaviour. Backport of r54712.
What'
s
New
in
Python
2.5.1
?
=============================
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment