New submission from Günter Rote:

It should be mentioned in the documentation that 

A StopIteration exception raised in the body of a while loop will terminate 
(and is caught by) the while-loop, thus leading to graceful termination.

A good place would be here:

I don't know how such a StopIteration termination of a while loop
affects the else-clause. This should be clarified.

it would be good to explicitly state:

An enclosing while-loop or for-loop acts like an implicit catch for 
StopIteration. The StopIteration exception will terminate the loop.

(I guess, a for-loop is also just terminated when the StopIteration originates 
in the BODY of the loop, although this is not the typical case.)

assignee: docs@python
components: Documentation
messages: 299982
nosy: Günter Rote, docs@python
priority: normal
severity: normal
status: open
title: Stopiteration terminates while-loop
type: enhancement
versions: Python 3.6

Python tracker <>
Python-bugs-list mailing list

Reply via email to