On Thu, 02 Apr 2009 23:37:16 +0100, grocery_stocker <cdal...@gmail.com> wrote:



in summary: iterator is bound to one instance of "it", while some_func()
returns a new instance each time it is called.

BUT

while what you are doing is interesting, it is not the same as Python's
iterators, which use "yield" from a function and don't require storing a
value in a class. look for "yield" in the python docs. this comment may be irrelevant; i am just worried you are confusing the above (which apart
from the mistake about instances is perfectly ok) and python's iterators
(which use next(), yield, etc).


Okay, one last question for now

[snip]

How comes I can;t go over 'value' like in the following

for x in value:
...     print x
...
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
TypeError: iteration over non-sequence

I refer you back to Andrew's answer.  Your "value" object isn't an
iterator and doesn't obey the Iteration protocol.  Expecting to be
able to iterate over it is a tad optimistic.

--
Rhodri James *-* Wildebeeste Herder to the Masses
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to