Ciao, come dice Michele in tutte le versioni di Python precedenti alla 3.3 i dizionari non sono ordinati, bisogna sempre tenerlo a mente.
Ad ogni modo, per ciclare le chiavi di un dizionario conoscendo il valore del prossimo ciclo puoi fare così: from itertools import izip_longest dizionario = {1: 'A', 2: 'B', 3: 'C'} chiavi = list(dizionario.keys()) for chiave, prossima in izip_longest(chiavi, chiavi[1:]): print '=' * 20 print 'chiave corrente: ', chiave print 'prossima chiave: ', prossima in due parole: - salvi le chiavi in una lista (quindi ordinata) - con izip_longest crei una lista di coppie come se stessi ciclando conteporaneamente le chiavi e le chiavi stesse partendo dal secondo elemento - nell'ultimo ciclo in "chiave" ci sarà l'ultima chiave, ed in "prossima" ci sarà None Se devi ciclare sia le chiavi che i valori con la stessa logica (dict.iteritems() ma sapendo i prossimi items) pruoi cambiare con questo codice: cont_diz = dizionario.items() for (chiave, valore), (prossima_chiave, prossimo_valore) in izip_longest(cont_diz, cont_diz[1:], fillvalue = (None, None)): print '=' * 20 print 'valori correnti:' print chiave, valore print 'Prossimi valori:' print prossima_chiave, prossimo_valore ..che praticamente è quello di prima ma in usando items() invece di keys() e dando a izip_longest un valore di fallback custom Ciao, Federico Il giorno mar 12 feb 2019 alle ore 14:01 Michele Orrù <li...@tumbolandia.net> ha scritto: > On 2/12/19 1:51 PM, Gabriele Battaglia wrote: > > Ciao a tutti. > > Se ho un ciclo che sta iterando sulle chiavi di un dizionario. Ho la > > possibilità di conoscere la chiave successiva a quella a cui il ciclo è > > arrivato? > > Perdonate se non sono riuscito ad esprimermi bene... Se non è chiaro ci > > provo con parole diverse. > > Gabry. > > > > ciao > non c'è nozione d'ordine sulle chiavi di un dizionario, ma puoi iterare > le chiavi con > for key in dict > > se hai bisogno di ordine ci sta ordereddict > > -- > https://www.youtube.com/watch?v=fhCLalLXHP4 > _______________________________________________ > Python mailing list > Python@lists.python.it > https://lists.python.it/mailman/listinfo/python >
_______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python