[Tutor] Difference between 'yield' and 'print'
kent37 at tds.net
Wed Jan 17 12:00:24 CET 2007
Luke Paireepinart wrote:
> Refer to http://docs.python.org/ref/yield.html for information about yield.
> Disclaimer: The following information I'm going to present you I came up
> with after reading that short explanation of 'yield' so it may not be
> exactly correct.
There is a longer explanation here:
> So you could think of the loop like this:
> gen = some_function(5) #create the generator
> while 1:
> print gen.next()
> except: #we ran out of things to generate (the generator stopped
> yielding results -- supposedly it raises an error here?)
> print "End of generator."
> Anyway, I've never used them but that sounds like a reasonable way for
> them to work.
Yes, that is pretty much what is going on. The generatory will raise
StopIteration when there are no more values.
More information about the Tutor