В Python существует ли разница между созданием объекта-генератора с помощью выражения генератора по сравнению с использованием инструкции yield?
Используя выход:
def Generator(x, y):
for i in xrange(x):
for j in xrange(y):
yield(i, j)
Использование выражения генератора:
def Generator(x, y):
return ((i, j) for i in xrange(x) for j in xrange(y))
Обе функции возвращают объекты-генераторы, которые производят кортежи, например. (0,0), (0,1) и т.д.
Любые преимущества того или другого? Мысли?
Спасибо всем! В этих ответах есть много отличной информации и дальнейших ссылок!