我不断收到错误消息“ int object not callable”,但是即使环顾了互联网并且堆栈溢出,我也无法推断出修复方法。我以为可能是pygame.quit函数引起的,但是我不确定我的到底是什么问题。
# Imports--------------------------------------------------------------------------------------------------------------#
import pygame
# initialization-------------------------------------------------------------------------------------------------------#
pygame.init()
# Flags----------------------------------------------------------------------------------------------------------------#
gameExit = False
# Variables -----------------------------------------------------------------------------------------------------------#
display_height = 500
display_width = 500
# Colors --------------------------------------------------------------------------------------------------------------#
FUCHSIA = (255, 0, 255)
PURPLE = (128, 0, 128)
TEAL = (0, 128, 128)
LIME = (0, 255, 0)
GREEN = (0, 128, 0)
OLIVE = (128, 128, 0)
YELLOW = (255, 255, 0)
ORANGE = (255, 165, 0)
RED = (255, 0, 0)
MAROON = (128, 0, 0)
SILVER = (192, 192, 192)
GRAY = (128, 128, 128)
BLUE = (0, 0, 255)
NAVY = (0, 0, 128)
AQUA = (0, 255, 255)
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
# Draw Screen----------------------------------------------------------------------------------------------------------#
win = pygame.display.set_mode((display_width, display_height))
pygame.display.set_caption("Airbender Training")
Clock = pygame.time.Clock()
# Main Loop------------------------------------------------------------------------------------------------------------#
while not gameExit:
for event in pygame.event.get():
if event.type == pygame.QUIT():
Exit = True
win.fill((0, 0, 0))
Clock.tick(60)
pygame.display.update()
pygame.quit()
答案 0 :(得分:2)
pygame.QUIT
是数字常数,而不是函数。通常,大写变量名称表示某种常量。
如果打印出pygame.QUIT
,则会得到12
(一个整数)。用pygame.QUIT()
放在括号后基本上是说12()
,这显然没有意义。
所以只需更改:
if event.type == pygame.QUIT():
到
if event.type == pygame.QUIT:
您可以在http://www.pygame.org/docs/ref/event.html上查看所有不同类型的事件
答案 1 :(得分:1)
此行中的错误:
if event.type == pygame.QUIT():
pygame.QUIT
只是一个常量(实际上是一个int
常量),不应该被调用-您只需检查event.type
是否具有与其相同的值。 / p>
if event.type == pygame.QUIT:
将为您修复它。
答案 2 :(得分:0)
第50行。pygame.QUIT
是一个整数。删除()
while not gameExit:
for event in pygame.event.get():
if event.type == pygame.QUIT: # here
Exit = True
答案 3 :(得分:0)
如果event.type == pygame.QUIT():
QUIT是一个整数,您不能像函数一样调用它。删除括号。