是否有用于跟踪所有按键的 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()))
我正在使用 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()))