python-3.x Pygame TypeError:“int”对象不可调用

r1zhe5dt  于 2023-05-30  发布在  Python
关注(0)|答案(1)|浏览(169)

这几行python 3.2代码使用了最新的pygame模块来移动图像。它与这个例子有关:http://www.pygame.org/docs/tut/MoveIt.html
下面是我的代码:

import pygame
import sys 

pygame.init()
screen = pygame.display.set_mode((600,400))
bg = pygame.image.load('bg.jpg')
player = pygame.image.load('player.jpg')
pos = player.get_rect()

while True:
    for i in pygame.event.get():
       if i.type() == pygame.QUIT:
            sys.exit()
    screen.blit(bg,(0,0))
    screen.blit(player,(i,i))
    pygame.display.update()

下面是我在运行它时得到的错误:
追溯(最近一次调用):
文件“C:/Users/Grounds Keeper Willy/Desktop/Python Code/test.py”,第12行,在
if i.type()== pygame.QUIT:
TypeError:“int”对象不可调用
我发现了类似的问题,但答案说,问题是使用一个函数名作为一个变量,这不是我在做什么。我似乎不知道这里出了什么问题。

m4pnthwp

m4pnthwp1#

应改为:

if i.type == pygame.QUIT:

而不是:

if i.type() == pygame.QUIT:

因为Event类的type成员不是一个函数,所以你不需要/可以使用()调用它。

相关问题