[Python] Lettura buffer di tastiera.

Manlio Perillo manlio.perillo a gmail.com
Lun 23 Giu 2014 11:45:51 CEST


2014-06-21 12:32 GMT+02:00 Gabriele Battaglia <iz4apu a libero.it>:

>
> Il giorno 20/giu/2014, alle ore 20:17, Manlio Perillo <
> manlio.perillo a gmail.com> ha scritto:
>
> 2014-06-20 12:44 GMT+02:00 Gabriele Battaglia <iz4apu a libero.it>:
>
>> Giorno di nuovo.
>>
>> Python 2.7.7, sotto Windows.
>>
>> Avrei bisogno di leggere i caratteri premuti sulla tastiera ma senza
>> fermare il flusso del programma.
>>
>>
> Puoi spiegare meglio cosa esattamente vuoi fare e, soprattutto, come è
> organizzato il tuo programma?
> Perchè ci sono diverse soluzioni possibili, a seconda dei dettagli.
>
>
>> GB: Ciao Manlio.
> Dunque, tieni conto che io sono un “programmatore”, le virgolette sono
> obbligatorie, agli inizi, non so usare le API, non saprei nemmeno da dove
> cominciare, anche la mia conoscenza di Python è appena abbozzata, tanto che
> comprendo circa il 10% delle disquisizioni che passano su questa lista.
> Perciò cercherei una soluzione semplicissima, se possibile da attuarsi con
> le batterie incluse di Python.
>
>
Come ti hanno suggerito, la funzione kbhit è quello che ti serve (mi ero
dimenticato della sua esistenza, dato che non uso Windows).



> Il programma, che deve girare sotto Windows e in console, sarebbe un test.
> Devono comparire a video delle domande chiuse, quelle a scelta multipla
> del tipo A, B, C oD.
> 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.
>
> Perciò, mentre l’esaminando pensa, io ho bisogno che il flusso del
> programma continui a girare normalmente perché deve gestire dei timer.
>
>
Marco ti ha dato un esempio.  Tutto quello che devi aggiungere è il
supporto per il timer.  Il modo più semplice è fare un sleep(0.1)
all'interno del ciclo ed aggiornare il tempo di 0.1 secondi.  Se il tempo
impiegato supera quello permesso, riporti un errore.

> [...]

Ciao  Manlio
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20140623/ebf1f13f/attachment.html>


Maggiori informazioni sulla lista Python