[Python-de] generatoren unverstaendnis

robertj robert_kuzelj at yahoo.com
Mit Jul 2 00:40:23 EDT 2003


hi,

irgendwie muss ich beim gebrauch von generatoren und iteratoren
noch ein problem haben. vieleicht kann mich einer erhellen

folgende kleiner beispielcode - 


>>>
from __future__ import generators

class Liste:
    def __init__(self, *_values):
        self.Values = _values
        self.Index = -1
    def __iter__(self):
        self.Index = -1
        return self
    def next(self):
        self.Index += 1
        if len(self.Values) > self.Index:
            return self.Values[self.Index]
        raise StopIteration()
    def next(self):
        for value in self.Values:
            yield value
           

if __name__ == "__main__":
    for x in Liste("Eins", "zwei", "drei"):
        print x
>>>

das beispiel laeuft mit der ersten next-methode
ohne probleme durch. mit der zweiten bekomme ich
eine endlos "schleife" - kapiere bloss nicht warum?

hab ich irgendwas im PEP zu generatoren ueberlesen.

ciao robertj