Distinguishing active generators from exhausted ones

Ben Finney ben+python at benfinney.id.au
Sun Jul 26 01:10:40 CEST 2009

Michal Kwiatkowski <constant.beta at gmail.com> writes:

> I may be missing something obvious here. Is there a better way to tell
> if a given generator object is still active or not?

    foo = the_generator_object
    except StopIteration:

In other words, don't LBYL, because it's EAFP. Whatever you need to do
that requires the next item from the generator, do that; you'll get a
specific exception if the generator is exhausted.

 \      “Courteous and efficient self-service.” —café, southern France |
  `\                                                                   |
_o__)                                                                  |
Ben Finney

More information about the Python-list mailing list