Ok Dennis,

You were correct. The following also works in the Windows 10 command window.

import time
import msvcrt

while "more work to do":
    print("Getting data...")
    time.sleep(1)
    print("Saving data to file...")
    time.sleep(1)
    key = msvcrt.getwch()
    #print('key: %s'%key)  # just to show the result
    if key == chr(27):
        print("Pre-termination...")
        time.sleep(1)
        raise SystemExit("exit")
Note, I am using the "Esc" key to exit, which is one answer to my last posting on this topic.


On 2018-01-23 20:37, Dennis Lee Bieber wrote:
On Tue, 23 Jan 2018 19:50:57 +0100, Virgil Stokes <v...@it.uu.se> declaimed
the following:

I am running the code with Python 3.6 on a windows 10 platform. I have
tried many approaches (mainly those posted on stackoverflow) but I have
yet to find an approach that works for this structure.

Note:
   1) The code is executed in the windows 10 command window
   2) I am not using wxPython, IDLE, or pyGame in this application.
   3) The time to get the data, process it and write it to a file can
      take from 0.5 sec to 1.5 sec
   4) The key hit need not be echoed to the command window
        And none of your searching found
https://docs.python.org/3/library/msvcrt.html
which is part of the standard library (and documented in the library
manual). The module IS Windows specific, you'd have to rewrite the code to
run on Linux.

        Now, if your requirement was to detect a keypress WHILE the data
fetch/processing was happening, the solution will be different.

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to