Gibt es in Python einen Unterschied zwischen dem Erstellen eines Generatorobjekts über einen Generatorausdruck und der Verwendung der Yield- Anweisung?
Mit Ausbeute :
def Generator(x, y):
for i in xrange(x):
for j in xrange(y):
yield(i, j)
Mit Generator Ausdruck :
def Generator(x, y):
return ((i, j) for i in xrange(x) for j in xrange(y))
Beide Funktionen geben Generatorobjekte zurück, die Tupel erzeugen, z. B. (0,0), (0,1) usw.
Irgendwelche Vorteile des einen oder anderen? Gedanken?
Danke an alle! Diese Antworten enthalten viele großartige Informationen und weitere Referenzen!