2012-08-06 83 views
3

這幾行python 3.2代碼使用最新的pygame模塊來移動圖像。它關係到這個例子: http://www.pygame.org/docs/tut/MoveIt.htmlPygame TypeError:'int'對象不可調用

這裏是我的代碼:

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() 

以下是錯誤運行它時,我得到:

Traceback (most recent call last):
File "C:/Users/Grounds Keeper Willy/Desktop/Python Code/test.py", line 12, in
if i.type() == pygame.QUIT:
TypeError: 'int' object is not callable

我也發現了類似的問題,但在答案指出,問題是使用函數名稱作爲變量,這不是我正在做的。我似乎無法弄清楚這裏有什麼問題。

回答

3

它應該閱讀:

if i.type == pygame.QUIT: 

代替:

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

因爲Event類的type成員不是一個函數,所以你並不需要/可以通過調用它()