[PIPython] problema mappa

Andrea Giammarchi andrea
Mer 25 Maggio 2005 12:19:57 CEST


Mariano Di Felice wrote:

> Beh, sicuramente non sono al livello del tuo prof, ed inoltre non 
> conosco l'ANSI C...
> Da come dice, sembra che per terminare un ciclo for o while non vi sia 
> soluzione....
> Non ti so dare una risposta esauriente, magari chiedilo direttamente a 
> lui e poi postalo qui, per la conoscenza di tutti noi :-) eh eh eh
>
> ciao saluti 

esempio uscita da for o while
for( i = 0; i < 1000; i++) {
if( condizione ) {
i = 1000; // esce dal for
}
}

while( condizione ) {
if( sotto_condizione ) {
condizione = false; // esce dal while
}
}


non esistono costrutti foreach o for in ... quindi mi chiedevo come 
ovviare, parte il loop di iterazione consistente, trovo la condizione, a 
che scopo attenderne la fine ?
probabilmente si potrebbe usare una cosa tipo questa che ho scritto 
adesso .. dite ce e' un po' troppo macchinoso ??? :F

class Break(Exception):
    def __init__(self, value):
        self.value = value
    def __str__(self):
        return repr(self.value)
    def get(self):
        return self.value
   
lista = {('value a'):'a', ('value b'):'b', ('value c'):'c'}

try:
    for chiave, valore in lista.iteritems():
        print chiave, valore
        if valore == 'b':
            print '-- fine iterazione --'
            raise Break(lista)
except Exception, lista:
    lista = lista.get()
    for chiave, valore in lista.iteritems():
        print chiave, valore

Saluti,
andr3a


More information about the Python mailing list