[Python-Dev] Please reconsider PEP 479.

Hrvoje Niksic hrvoje.niksic at avl.com
Wed Nov 26 16:55:27 CET 2014


On 11/26/2014 12:24 PM, Nick Coghlan wrote:
> Now needs to be written out explicitly as:
>
>      def my_generator():
>          ...
>         try:
>              yield next(it)
>          except StopIteration
>              return
>          ...

To retrieve a single value from an iterator, one can use the 
for/break/else idiom:

def my_generator():
     ...
     for val in it:
         yield val
         break
     else:
         return
     ...

In general, catching and raising StopIteration feels like something that 
should rarely be done by normal code.



More information about the Python-Dev mailing list