Il caso simil reale รจ questo ho una funzione che legge un file, e potrei ritornare una grande lista. Al posto di ritornare la lista, faccio lo yield del dato estratto, al fine di risparmiare RAM.
def parsefile(path): # tante belle cose yield x Ho poi altre due funzioni che generano delle stringhe. Come argomento potrei passare il listone, ma passo l'iteratore data = parsefile(path): def tampastinga1(data): # prendi il necessario da data return stinga def stampastringa2(data): # prendi il necessario da data return stringa Ebbene, la seconda funzione non ritorna nulla. Il giorno ven 17 set 2021 alle ore 16:57 Valerio Pachera <siri...@gmail.com> ha scritto: > > Buongiorno a tutti, ho notato questa cosa: > > #!/usr/bin/env python3 > > def test(): > for x in range(0, 10): > yield x > > iterator = test() > > print(test) > > for x in iterator: > print(x) > > for x in iterator: > print(x) > > ------------- > > Restituisce > > <function test at 0x7f17dd3e81f0> > 0 > 1 > 2 > 3 > 4 > 5 > 6 > 7 > 8 > 9 > > ----------- > _______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python