vbgunz wrote: > I believe I understand now. the yield keyword is sort of like a cousin > to return. return will bring back an object I can work with and so does > yield *but* yield's object will most likely support the .next() method.
No, that's not really how it works. When a generator function is called, it returns the generator object immediately. None of the code inside is executed. Every time you call that generator function, you get a new generator object with the initial state. The objects that are yielded inside the code don't show up yet. The code inside the generator gets executed only when the generator object is iterated over (or its .next() method is called). The objects that are yielded are the results of calling the .next() method. -- Robert Kern [EMAIL PROTECTED] "I have come to believe that the whole world is an enigma, a harmless enigma that is made terrible by our own mad attempt to interpret it as though it had an underlying truth." -- Umberto Eco -- http://mail.python.org/mailman/listinfo/python-list