È accettabile/Pythonic utilizzare un metodo in una classe come generatore? Tutti gli esempi che ho trovato mostrano la dichiarazione di rendimento in una funzione, non in una classe.Un metodo all'interno di una classe può essere un generatore?
Ecco un codice funzionante esempio:
class SomeClass(object):
def first_ten(self):
for i in range(10):
yield i
def test(self):
for i in self.first_ten():
print i
SomeClass().test()
Direi che la maggior parte degli esempi sono funzioni perché è più semplice; non è necessario essere in una classe, quindi non viene mostrato. – jonrsharpe