在使用图像创建函数时,我有一个python问题,下面是代码:这通常发生在创建带有我想要运行的函数的类时,该函数在屏幕上显示图像。
import pygame
white = (255,255,255)
width,height = 800,500
win = pygame.display.set_mode((width,height))
pygame.display.set_caption("Test")
class Game:
def __init__(self):
self.player = pygame.image.load("graphics/player/player.png")
def player(self):
win.blit(self.player, (0,0))
pygame.display.update()
game = Game()
def functions():
game.player()
def loop():
flag = True
clock = pygame.time.Clock()
while flag:
clock.tick(60)
for event in pygame.event.get():
if event.type == pygame.QUIT:
flag = False
pygame.quit()
functions()
pygame.display.update()
loop()
错误信息是:
Traceback (most recent call last):
File "C:", line 35, in <module>
loop()
File "C:", line 32, in loop
functions()
File "C:", line 19, in functions
game.player()
TypeError: 'pygame.Surface' object is not callable
class Game:
def __init__(self):
self.player = pygame.image.load("graphics/player/player.png")
def player(self):
win.blit(self.player, (0,0))
pygame.display.update()
__init__()
定义了一个名为self.player
的属性。
还有一个类实例方法叫做player
。
你不能那样做。为其中一个选择不同的名称。