如何解决我如何让python检测按键?
我想让这段代码在按下按钮时打个招呼 我使用 replit.com 或 repl.it 它说是一个错误:
File "main.py",line 18,in intro
if keyboard.KEY_DOWN("a"):
TypeError: 'str' object is not callable
我正在尝试在 python 上制作一个垄断游戏,但这样的错误不断出现
import tkinter as tk
from tkinter import *
import os
import random
import math
import pygame
from pygame.locals import *
import sys
from sys import exit
import keyboard
from keyboard import *
window = pygame.init()
print("Wellcome to Math monopoply!!!\n")
time.sleep(1)
def intro():
print("Hi")
if keyboard.KEY_DOWN("a"):
print("hi")
intro()
解决方法
这可能有帮助
import pygame #Import pygame
import sys #
pygame.init() #Initialise it
window = pygame.display.set_mode((1000,800)) #Create a 1000x800 window
while True: #while loop
for event in pygame.event.get():
if event.type == pygame.QUIT: #if the user presses the 'X' button
pygame.quit() #De= initialise pygame
sys.exit() #Exit
if event.type == pygame.KEYDOWN: #if a key is pressed down
if event.key == pygame.K_a:
print("Hi")
您可以在此处阅读有关 pygame.event.get() 的更多信息
,如果当前按下某个键可以使用 pygame.key.get_pressed()
检测。 pygame.key.get_pressed()
返回一个包含每个键状态的列表。如果某个键被按下,则该键的状态为 True
,否则为 False
:
keys = pygame.key.get_pressed()
if keys[pygame.K_a]:
# [...]
键盘事件(参见 pygame.event 模块)仅在键的状态改变时发生一次。 KEYDOWN
事件在每次按下键时发生一次。您需要应用程序循环和事件循环来处理事件:
# application loop
run = True
while run:
# event loop
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_a:
print("Hi")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。