Measuring time between keystrokes in python

前端 未结 3 600
轻奢々
轻奢々 2020-12-19 20:11

Using the following code:

   >>> import time
   >>> start = time.time()
   >>> end = time.time()
   >>> end - start
         


        
3条回答
  •  旧时难觅i
    2020-12-19 20:48

    This will work (on some systems!):

    import termios, sys, time
    def getch(inp=sys.stdin):
        old = termios.tcgetattr(inp)
        new = old[:]
        new[-1] = old[-1][:]
        new[3] &= ~(termios.ECHO | termios.ICANON)
        new[-1][termios.VMIN] = 1
        try:
            termios.tcsetattr(inp, termios.TCSANOW, new)
            return inp.read(1)
        finally:
            termios.tcsetattr(inp, termios.TCSANOW, old)
    
    
    inputstr = ''
    while '\n' not in inputstr:
        c = getch()
        if not inputstr: t = time.time()
        inputstr += c
    elapsed = time.time() - t
    

    See this answer for nonblocking console input on other systems.

提交回复
热议问题