python - Python键盘按下时间和两次击键之间的时间
问题描述
我想得到按下键的时间和两次击键之间的时间。
例如: W 键按下 x 秒。(在下一次按键时打印该键未按下的时间)。
示例 2:
W pressed for 1 sec.
W released
Time between two keystrokes: 10 sec.
W pressed for 0.5 sec
W released
解决方案
perf_counter
您可以从内置time
模块中尝试该功能:
from time import perf_counter
# when detected a key press
start = perf_counter()
# when detected the press ended:
end = perf_counter()
print(f'Key pressed for {end-start} seconds.')
进入你的代码:
import time
import keyboard
while True:
start = time.perf_counter()
a = keyboard.read_event()
if a.name == "esc":
break
elif a.event_type == "down":
b = keyboard.read_event()
if a.name == "left" or a.name == "right":
while not b.event_type == "up" and b.name == a.name:
b = keyboard.read_event()
end = time.perf_counter()
print('You pressed', a.name, 'for', end-start, 'seconds.')
推荐阅读
- c# - 单独类中的 C# OOP-2D 对象数组
- ios - 使用 Swift 5/SwiftUI 更新使用谓词的 @FetchRequest
- python - python根据行读取具有不同信息的文件
- c# - 如何创建分钟的时间范围?
- visual-studio-code - 如何在 VSC 中再次启用工具提示/提示?
- firebase - 向 Firebase 用户 Android Studio 注册失败
- python - 无法在 PyCharm 中运行 unittest
- nodes - 在蚱蜢和犀牛中创造有机形状
- java - Admo 横幅广告警告:类型不匹配:推断类型是 AdListener?但预计 AdListener
- javascript - TamperMonkey:无法读取 null 的属性“dispatchEvent”