<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<div class="moz-cite-prefix">Manlio Perillo, alle 18:05 del
20/12/2014, digitò:<br>
</div>
<blockquote
cite="mid:CAAToxAETGhOZzvguZ8Fyvhh0LGDfHbLVtRKXoKEmma+4_v1EWw@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">2014-12-20 14:21 GMT+01:00 Gabriele
Battaglia <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:iz4apu@libero.it" target="_blank">iz4apu@libero.it</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Ciao a
tutti.<br>
Ho questo script che funziona bene sotto Windows, ma, a
causa dell’assenza di MSCVRT, non posso portare sotto Mac
o Linux.<br>
<br>
Qualcuno ha qualche idea sul come poterlo modificare per
far sì che funzioni anche sotto questi 2 sistemi
operativi?<br>
<br>
***<br>
# -*- Coding: UTF8 -*-<br>
# Utility di lettura tastiera 20/06/2014<br>
# Grazie agli amici della lista Python.<br>
# Versione 1.0<br>
<br>
import msvcrt, time<br>
<br>
def key(attesa=99999, msg=""):<br>
''' Attende per il numero di secondi specificati<br>
se tempo e' scaduto, o si preme un tasto, esce.<br>
msg e' il messaggio da mostrare.<br>
Restituisce il tasto premuto. '''<br>
if msg != "": print msg,<br>
t = time.time(); a = ""<br>
while (time.time() - t <= attesa):<br>
if msvcrt.kbhit(): a = msvcrt.getch()<br>
if a != "": break<br>
time.sleep(0.025)<br>
</blockquote>
<div><br>
</div>
<div>Devi impostare stdin in modalità cbreak e quindi usare
select.select per</div>
<div>attendere che l'utente scriva qualcosa.</div>
</div>
<br>
</div>
</div>
</blockquote>
Ciao Manlio.<br>
Ma questa soluzione fermerebbe il flusso dello script, oppure no?<br>
A me serve una non-blocking solution.<br>
GB.<br>
</body>
</html>