[Python] generatori

2012-01-03 Per discussione Daniele Zambelli
Mi sono imbattuto in un comportamento di Python che mi ha sorpreso e che mi ha confermato nell'idea che i generatori per me sono un po' un mistero. Una funzione prende come argomento una sequenza e ne stampa gli elementi: def mostra(sequenza): for e in sequenza: print(e)

Re: [Python] generatori

2012-01-03 Per discussione Vittorio Zuccala'
Ti ridei che l'unica cosa che sfugge è un paio di parentesi :-) Prova così: mostra((n*n*n for n in range(5))) 2012/1/3 Daniele Zambelli daniele.zambe...@gmail.com Mi sono imbattuto in un comportamento di Python che mi ha sorpreso e che mi ha confermato nell'idea che i generatori per me sono

Re: [Python] generatori

2012-01-03 Per discussione Marco Beri
2012/1/3 Daniele Zambelli daniele.zambe...@gmail.com A me il comportamento sembra strano e incoerente, cosa mi sfugge? Secondo me ti sfugge che hai consumato il generatore: cubi = (n*n*n for n in range(5)) for n in cubi: print n ... 0 1 8 27 64 for n in cubi: print n ... Ciao. Marco.

Re: [Python] generatori

2012-01-03 Per discussione Marco Mariani
2012/1/3 Daniele Zambelli daniele.zambe...@gmail.com Anche di questo posso stampare gli elementi: for n in cubi: print(n) 0 1 8 27 64 Mentre lo fai, esaurisci il generatore. Ma se lo passo alla funzione non viene stampato niente: mostra(cubi) A me il comportamento

Re: [Python] generatori

2012-01-03 Per discussione Davide Alberani
On Tue, Jan 3, 2012 at 09:39, Daniele Zambelli daniele.zambe...@gmail.com wrote: Ma se lo passo alla funzione non viene stampato niente: Non stampa nulla se lo passi alla tua funzione _dopo_ che ci hai già ciclato sopra una volta, arrivando quindi in fondo. :-P A quel punto cubi.next()

Re: [Python] generatori

2012-01-03 Per discussione Manlio Perillo
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Il 03/01/2012 09:39, Daniele Zambelli ha scritto: Mi sono imbattuto in un comportamento di Python che mi ha sorpreso e che mi ha confermato nell'idea che i generatori per me sono un po' un mistero. Come ti hanno già detto, i generatori non hanno