您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

确定Python中按键的长度

确定Python中按键的长度

#使用@H_502_1@pynput模块:( 最佳)

您可以使用以下代码

@H_502_1@from pynput import keyboard 
import time

def on_key_release(key): #what to do on key-release
    time_taken = round(time.time() - t, 2) #rounding the long decimal float
    print("The key",key," is pressed for",time_taken,'seconds')
    return False #stop detecting more key-releases

def on_key_press(key): #what to do on key-press
    return False #stop detecting more key-presses

with keyboard.Listener(on_press = on_key_press) as press_listener: #setting code for listening key-press
    press_listener.join()

t = time.time() #reading time in sec

with keyboard.Listener(on_release = on_key_release) as release_listener: #setting code for listening key-release
    release_listener.join()

#使用@H_502_1@pygame:( 好)

@H_502_1@import time
import pygame
import os
os.environ["SDL_VIDEO_CENTERED"] = "1"

screen = pygame.display.set_mode((600, 600))
pygame.display.set_caption("Time")
clock = pygame.time.Clock()

pygame.init()

clock = pygame.time.Clock()

running = True       
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
            pygame.quit()
            break
        if event.type == pygame.KEYDOWN:
            # detect key 'a'
            if event.key == pygame.K_a: # key 'a'
                t = time.time()
        if event.type == pygame.KEYUP:
            if event.key == pygame.K_a: # key 'a'
                t = time.time() - t; t = str(t); t = t[:5]
                print("You pressed key 'a' for",t,'seconds')


        screen.fill((255, 255, 255))
        pygame.display.update()

        clock.tick(40)

它只会检测您将在代码中编写的键。

使用@H_502_1@pip install pynput安装@H_502_1@pynput。 使用@H_502_1@pip install pygame安装@H_502_1@pygame。

python 2022/1/1 18:32:38 有197人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶