So now I have keyPress-b.py. It works well, except that I have to ^C to quit it.
====================================== #keyPress-b.py import msvcrt, time print \ """ After pressing Enter to start, press Space to get first and subsequent measurements of spin. Use Ctrl+C to quit. """ answer = raw_input("Press Enter to start ") while answer == "": c = 0 timeStart = time.time() while True: c += 1 if msvcrt.kbhit(): if msvcrt.getch() == ' ': break else: continue timeEnd = time.time() print print c, "spins" print "Time was %.4g seconds" % (timeEnd - timeStart) print "Spin rate was %.f per second" % (c/(timeEnd - timeStart)) print "Bye." time.sleep(1) ========end of keyPress-b.py================= I've tried revising in all sorts of ways, but none are satisfactory. Here's keyPress-b3.py, into which I've added ways to get "Hello" by a key press, and also a way to quit by pressing "q". It's flaky. I usually have to hit Space, "h" or "q" several times (or hold them down) before they will work. ======================================== #keyPress-b3.py import msvcrt, time print \ """ After pressing Enter to start, press Space to get first and subsequent measurements. Press h to print "Hello". Press and hold down q to quit. """ answer = raw_input("Press Enter to start ") while answer == "": c = 0 timeStart = time.time() while True: c += 1 if msvcrt.kbhit(): if msvcrt.getch() == ' ': break if msvcrt.kbhit(): if msvcrt.getch() == 'h': print "Hello" if msvcrt.kbhit(): if msvcrt.getch() == 'q': answer = "quit" timeEnd = time.time() print print c, "spins" print "Time was %.4g seconds" % (timeEnd - timeStart) print "Spin rate was %.f per second" % (c/(timeEnd - timeStart)) print "Bye." time.sleep(5) ========end of keyPress-b3.py==================== Advice, please, on how to correct the flakiness. Also, I can't figure out why the FIRST spin measurement of spins/second is usually almost double the subsequent measurements. E.g., 26536 spins Time was 0.765 seconds Spin rate was 34688 per second 27632 spins Time was 1.547 seconds Spin rate was 17862 per second Dick Moores Windows XP, Python 2.43 _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor