<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2014-06-21 12:32 GMT+02:00 Gabriele Battaglia <span dir="ltr"><<a href="mailto:iz4apu@libero.it" target="_blank">iz4apu@libero.it</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div style="word-wrap:break-word"><div>Il programma, che deve girare sotto Windows e in console, sarebbe un test.</div><div>Devono comparire a video delle domande chiuse, quelle a scelta multipla del tipo A, B, C oD.</div>

<div>L’utente deve rispondere premendo la lettera corrispondente alla risposta scelta. Ogni domanda prevede, in base al livello di complessità, un diverso ammontare di tempo, trascorso il quale, se l’utente non ha ancora risposto, si passa alla domanda successiva, oppure una delle risposte sbagliate non è più selezionabile.</div>

<div>Perciò, mentre l’esaminando pensa, io ho bisogno che il flusso del programma continui a girare normalmente perché deve gestire dei timer.<br></div><div>Chiaramente, se uso raw_input, o msvcrt.getch(), non posso più fare nulla perché tutto si blocca finché l’utente non batte un tasto.<br>

</div></div></blockquote><div><br></div><div>Ok, tutto chiaro. La soluzione del tuo caso è questa: <a href="http://stackoverflow.com/questions/2408560/python-nonblocking-console-input">http://stackoverflow.com/questions/2408560/python-nonblocking-console-input</a></div>

<div><br></div><div>Ti copio incollo il codice per fare prima. L'ho messo dopo la mia firma (dimmi se posso/devo fare qualcosa per facilitarti).<br></div><div><br></div><div>Ciao.<br>Marco.<br></div><div><br></div><div>

<br></div><div><br></div><div><br></div><div><div>import msvcrt</div><div><br></div><div>num = 0</div><div>done = False</div><div>while not done:</div><div>    print num</div><div>    num += 1</div><div><br></div><div>    if msvcrt.kbhit():</div>

<div>        print "you pressed",msvcrt.getch(),"so now i will quit"</div><div>        done = True</div></div><div><br></div></div>
</div></div>