[Python] spiegazione ad un aspirante programmatore

Domenico Chierico spaghetty a gmail.com
Mar 4 Set 2007 17:54:12 CEST


On Tue, 2007-09-04 at 17:46 +0200, Daniele Visaggio wrote:
> Il giorno mar, 04/09/2007 alle 16.02 +0200, Marco Mariani ha scritto:
> > Daniele Visaggio ha scritto:
> > 
> > > Molto semplicemente, quando scrivo "ciao" l'output dovrebbe essere solo
> > > "indovinato", ma quando lo eseguo, oltre a "indovinato", viene fuori
> > > anche "ritenta!".
> > >
> > > Qualcuno sa spiegarmi dove sbaglio?
> > >   
> > 
> > La condizione e' all'inizio del ciclo, non fra l'input e la stampa di 
> > "ritenta". Questa viene quindi scritta in ogni caso.
> > 
> Grazie per la risposta.
> 
> Scusa l'ignoranza, ma non ho capito bene. Se la condizione posta da
> while è soddisfatta, non dovrebbe eseguire solo il blocco di comandi
> sotto l'else, ignorando i comandi sotto while? quest'ultimi non
> dovrebbero essere eseguiti solo se la variabile password è diversa da
> "ciao"?

si perfettamente vero .. ma se presti attenzione la prima volta che il
ciclo viene eseguito password vale 1 quindi != "ciao" e quindi entra nel
ciclo e fa l'input ... e ti stampa anche ritenta 

dovresti quindi prima fare un'raw_input e poi il ciclo

password = raw_input("Password:")

while ... bla bla bla
bla bla bla

else: 
bla bla bla 



Maggiori informazioni sulla lista Python