我刚刚开始学习一个需要键盘输入的项目的python。根据我的阅读,pygame是最好的方法。很遗憾,我无法让KEYDOWN
工作。 {1}}返回的唯一事件是pygame.event.get()
。
我需要的代码会是这样的:
MOUSEMOTION
我不确定我做错了什么。我已经阅读了一些关于键盘输入的其他问题,并且所有这些都建议使用代码,据我所知,这些代码完全相同。例如,此问题的第一个答案的第一个代码块:How to get keyboard input in pygame?
import pygame
def main():
pygame.init()
while True:
for event in pygame.event.get()
if(event.type == pygame.KEYDOWN)
if(event.key==pygame.K_LEFT)
cry_because_it_worked()
返回pygame.init()
,我相信这意味着所有模块都已正确初始化。我正在使用python 3.4.3和pygame 1.9.2。任何帮助将不胜感激。
编辑:这是我代码中的实际循环:
(6,0)
答案 0 :(得分:0)
使用pygame.event.get
的正确代码如下所示:
import pygame
from pygame.locals import *
for event in pygame.event.get():
if event.type == QUIT: # if closing application
pygame.quit()
sys.exit()
elif event.type == KEYDOWN:
if event.key == K_LEFT:
cry_because_it_worked()
Pygame事件不仅仅是按键。它们也可以是鼠标移动和其他东西。首先检查事件类型非常重要。这就是我们提出以下内容的原因:
if event.type == KEYDOWN:
您需要做的下一件事是检查正在按下的键。您可以通过阅读key
对象的event
属性来执行此操作:
if event.key == K_LEFT:
因此,在您的计划中,您检查event.type
以确保该活动是按键操作,然后检查event.key
以查看按下了哪个键。