Very basic question - how to get one value from a generator in Python?
So far I found I can get one by writing gen.next()
. I just want to make sure this is the right way?
Thanks, Boda Cydo.
Very basic question - how to get one value from a generator in Python?
So far I found I can get one by writing gen.next()
. I just want to make sure this is the right way?
Thanks, Boda Cydo.
In Python <= 2.5, use gen.next()
. This will work for all Python 2.x versions, but not Python 3.x
In Python >= 2.6, use next(gen)
. This is a built in function, and is clearer. It will also work in Python 3.
Both of these end up calling a specially named function, next()
, which can be overridden by subclassing. In Python 3, however, this function has been renamed to __next__()
, to be consistent with other special functions.