Ciao a tutti.
Ho bisogno di leggere l'input da tastiera, senza bloccare il flusso del programma, in uno script di Python3, che gira sul terminale. L'idea è quella di realizzare uno script multipiattaforma. Dopo aver sperimentato senza successo varie soluzioni e moduli, sto provando ora curses, di cui ho trovato un porting per Windows, qui: https://www.lfd.uci.edu/~gohlke/pythonlibs/

Mi serve che il programma faccia delle cose, quando l'utente preme un tasto e che l'azione parta immediatamente, senza aspettare l'invio, come succede usando input. Inoltre, il flusso deve continuare a girare perchè ci sono altri eventi, legati allo scorrere del tempo, che devono accadere.

Partendo da 0 nell'uso di curses, fatico a capirne la filosofia di funzionamento. Ho visto il classico esempio di come si legge la tastiera:

while True:
    c = stdscr.getch()
    if c == ord('p'):
        PrintDocument()
    elif c == ord('q'):
        break  # Exit the while loop
    elif c == curses.KEY_HOME:
        x = y = 0
Ma onestamente non la capisco perchè l'esempio non è completo. Il modulo curses, sembra non avere un metodo stdscr...

Qualcuno mi indirizza sulla via giusta?
Grazie.

Gabriele.
_______________________________________________
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python

Rispondere a