Python的pygame按键处理问题

刚刚学python的pygame,想自己做一下类似打乒乓球一类的游戏,写完后发现对于挡板的控制好像很不顺畅,代码如下:


    if event.type==KEYDOWN:
        if event.key==K_w:
            player_left_up=True
        if event.key==K_s:
            player_left_down=True
    if event.type==KEYUP:
        if event.key == K_w:
            player_left_up = False
        if event.key == K_s:
            player_left_down = False
    #挡板移动
    if player_left_up:
        left_player_pos_y -= 3
    if player_left_down:
        left_player_pos_y += 3

挡板按W往上走,S往下走,这个代码在连续快速W S W S的按的时候,会出现比如W本该是False但它依旧被判定为True的情况,也就是按快了之后即使没有按下W,它也自己往上走了,然后我去网上看类似的代码,写法明明和我一样但是别人的就一点问题也没有,按键按起来很顺畅。这是为什么呀?我应该怎么做?求解

1个回答

把几个if改成elif试一下,全部都是if判断迟缓

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问