En Python, ¿hay alguna diferencia entre crear un objeto generador a través de una expresión generadora y usar la declaración de rendimiento ?
Usando rendimiento :
def Generator(x, y):
for i in xrange(x):
for j in xrange(y):
yield(i, j)
Usando expresión generadora :
def Generator(x, y):
return ((i, j) for i in xrange(x) for j in xrange(y))
Ambas funciones devuelven objetos generadores, que producen tuplas, por ejemplo (0,0), (0,1), etc.
¿Alguna ventaja de uno u otro? Pensamientos
¡Gracias a todos! ¡Hay mucha información excelente y más referencias en estas respuestas!