By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
459,635 Members | 1,781 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 459,635 IT Pros & Developers. It's quick & easy.

help for using msvcrt.kbhit() with Python 2.3 editors?

P: n/a
I'm having some trouble using kbhit inside the editor enviroments. I'm
using win2000 with Python2.3 and win32all v157 versions.

Any pointer on how this should be handled would be appreciated. Is
there another non-blocking way to detect a key press?

Here's the code that is causing the trouble. If I run this by
double-clicking then it works as expected. But if I run from IDLE or
PythonWin it basically never returns. msvcrt.kbhit() always returns 0
as far as I can tell by adding print statements. I can't confirm it
but I seem to recall this worked at least with the PythonWin editor
environment under my previous Python 2.2 setup.

###########
import serial # access to serial port
import time # sleep command
import msvcrt # detect keyboard key press events

ser = serial.Serial(0, 4800, timeout=0.25)
data = ''
while not msvcrt.kbhit():
buf = ser.read(10)
if buf <> '': print buf
#time.sleep(1)
data = data + buf # concatenate buf onto data
ser.close()
###########

-- David
Jul 18 '05 #1
Share this question for a faster answer!
Share on Google+

This discussion thread is closed

Replies have been disabled for this discussion.