Czy w Pythonie jest jakaś różnica między tworzeniem obiektu generatora za pomocą wyrażenia generatora a użyciem instrukcji yield ?
Korzystanie z wydajności :
def Generator(x, y):
for i in xrange(x):
for j in xrange(y):
yield(i, j)
Korzystanie z wyrażenia generatora :
def Generator(x, y):
return ((i, j) for i in xrange(x) for j in xrange(y))
Obie funkcje zwracają obiekty generatora, które tworzą krotki, np. (0,0), (0,1) itd.
Jakieś zalety jednej lub drugiej? Myśli?
Dzięki wszystkim! W tych odpowiedziach jest wiele świetnych informacji i dalszych odniesień!