是否有用于跟踪所有按键的 python 代码(获取每个按键的时间轴)?

Is there a python code for tracking all keypresses (getting timeline for each keypress)?

我正在使用 OpenSesame(在 Python 上运行)创建实验。我需要一个代码来获取每个按键的时间轴(1、2、3、4,space)。例如,键 1 在 12223ms 时按下,键 3 在 15452ms 时按下,键 1 在 19112ms 时再次按下。在这里,我需要从实验开始就跟踪所有这些按键(11223ms、15452ms、19112ms 等)。

对于跟踪时间,您可以使用time模块。 time.time() 函数为您提供当前的 unix 时间戳(自 1970 年以来的秒数)。在程序开始时取一次时间,然后从所有其他测量值中减去“开始”时间以获得差异。

检测按键取决于您使用的操作系统。 Windows 上有 msvcrt 模块。具体见msvcrt.getch.

*nix 有一个不同的库,现在记不起它的名字了。 Google 是你的朋友:-)

编辑:显然,OpenSesame 具有键盘处理功能,因此最好使用它们。

datetime

from datetime import datetime


def startms(t):
    # *1000 for ms
    return (t-start).total_seconds()*1000


start = datetime.now()

# Your function here, or time.sleep for an example

print(startms(datetime.now()))