Salve ragazzi navigando un po in rete mi sono imbattuto in questo pezzo di codice Python:
def splitlist(lista,lunghezza): i=0 while 1: fine=i+lunghezza if len(lista)<=i: return yield lista[i:fine] i=fine print list(splitlist([1,2,3,4],2)) Vi spiego fin dove sono riuscito a capirlo io. Si crea la funzione 'splitlist' con i parametri 'lista' e 'lunghezza' Si crea la variabile 'i' e gli viene assegnato il valore zero. Si crea un ciclo while 1, ovvero fino a che la condizione sarà 1. Si crea la variabile 'fine' e gli vengono assegnati le variabili 'i' e 'lunghezza' da sommare, quindi a questo punto abbiamo la variabile 'fine' che vale due. Quindi si passa all'istruzione 'if' che verifica se gli elementi della lista sono minori o uguali a 'i', cioè a zero. Se è vero che sono minori o uguali ritornerà la lista vuota. Dall'istruzione sotto in poi non riesco a capirci più nulla. In particolare non ho capito il funzionamento dell'istruzione yield, da quel che ho letto in rete si tratta di un generatore o una cosa del genere ma non ho capito bene come agisce. GRAZIE RESTO IN ATTESA DI VOSTRI AIUTI _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python