diff options
author | Benjamin Peterson <benjamin@python.org> | 2012-10-12 16:04:32 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2012-10-12 16:04:32 (GMT) |
commit | 143d034ecd110f8543eba4ad76dfb6085cdaeb3d (patch) | |
tree | 9ddcfc6fe0d0cf8ce8558f88969bf1f9e98c1d25 /Doc/tutorial/classes.rst | |
parent | c3de6d63cd20cd26a288999d454124cb72eb57fe (diff) | |
parent | 7a9953edfbbd51dbda60ab31c0e5db5eea968b53 (diff) | |
download | cpython-143d034ecd110f8543eba4ad76dfb6085cdaeb3d.zip cpython-143d034ecd110f8543eba4ad76dfb6085cdaeb3d.tar.gz cpython-143d034ecd110f8543eba4ad76dfb6085cdaeb3d.tar.bz2 |
merge 3.2
Diffstat (limited to 'Doc/tutorial/classes.rst')
-rw-r--r-- | Doc/tutorial/classes.rst | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/Doc/tutorial/classes.rst b/Doc/tutorial/classes.rst index b4f09c2..3283e54 100644 --- a/Doc/tutorial/classes.rst +++ b/Doc/tutorial/classes.rst @@ -737,11 +737,11 @@ using a :keyword:`for` statement:: This style of access is clear, concise, and convenient. The use of iterators pervades and unifies Python. Behind the scenes, the :keyword:`for` statement calls :func:`iter` on the container object. The function returns an iterator -object that defines the method :meth:`__next__` which accesses elements in the -container one at a time. When there are no more elements, :meth:`__next__` -raises a :exc:`StopIteration` exception which tells the :keyword:`for` loop to -terminate. You can call the :meth:`__next__` method using the :func:`next` -built-in function; this example shows how it all works:: +object that defines the method :meth:`~iterator.__next__` which accesses +elements in the container one at a time. When there are no more elements, +:meth:`__next__` raises a :exc:`StopIteration` exception which tells the +:keyword:`for` loop to terminate. You can call the :meth:`__next__` method +using the :func:`next` built-in function; this example shows how it all works:: >>> s = 'abc' >>> it = iter(s) @@ -761,8 +761,8 @@ built-in function; this example shows how it all works:: Having seen the mechanics behind the iterator protocol, it is easy to add iterator behavior to your classes. Define an :meth:`__iter__` method which -returns an object with a :meth:`__next__` method. If the class defines -:meth:`__next__`, then :meth:`__iter__` can just return ``self``:: +returns an object with a :meth:`~iterator.__next__` method. If the class +defines :meth:`__next__`, then :meth:`__iter__` can just return ``self``:: class Reverse: """Iterator for looping over a sequence backwards.""" @@ -819,8 +819,8 @@ easy to create:: Anything that can be done with generators can also be done with class based iterators as described in the previous section. What makes generators so -compact is that the :meth:`__iter__` and :meth:`__next__` methods are created -automatically. +compact is that the :meth:`__iter__` and :meth:`~generator.__next__` methods +are created automatically. Another key feature is that the local variables and execution state are automatically saved between calls. This made the function easier to write and |