Python 当我尝试使用图像作为背景而不是使用黑色背景时,我的程序将无法运行错误:pygame.surface';对象不可调用
我尝试运行此程序,但出现以下错误:Python 当我尝试使用图像作为背景而不是使用黑色背景时,我的程序将无法运行错误:pygame.surface';对象不可调用,python,pygame,Python,Pygame,我尝试运行此程序,但出现以下错误: Traceback (most recent call last): File "C:/Python/ComputingCW/ComputingCW.py", line 12, in <module> Surface = pygame.image.load('Pygame_Background.jpg')((W, H), 0, 32) TypeError: 'pygame.Surface' object is not callable
Traceback (most recent call last):
File "C:/Python/ComputingCW/ComputingCW.py", line 12, in <module>
Surface = pygame.image.load('Pygame_Background.jpg')((W, H), 0, 32)
TypeError: 'pygame.Surface' object is not callable
这看起来像是名称冲突。Surface是一个模块(或子模块),但此行似乎覆盖了此Surface对象:
Surface = pygame.image.load('Pygame_Background.jpg')((W, H), 0, 32)
我会尝试在左侧使用不同的变量,例如surf_bg。这看起来像是名称冲突。Surface是一个模块(或子模块),但此行似乎覆盖了此Surface对象:
Surface = pygame.image.load('Pygame_Background.jpg')((W, H), 0, 32)
我会尝试在左侧使用不同的变量,例如surf_bg。尝试使用
'Pygame_Background.jpg'文件的绝对路径。
从驱动器的字母开始跟踪目录尝试使用
'Pygame\u Background.jpg'文件的绝对路径
从驱动器的字母开始跟踪目录这一行
pygame.image.load('pygame\u Background.jpg')
从硬盘加载图像并将其转换为对象。现在,您有了这个曲面,并尝试像调用函数一样调用它,((W,H),0,32)
,这会导致类型错误,因为曲面对象不是函数(它不可调用)
你真正想做的是:
创建显示窗口(我在这里称之为screen
)
加载背景图像(最好称之为background
,因为Surface
是pygame.Surface
类的名称)
另外,调用pygame.Surface.convert
或convert\u alpha
方法来提高性能
在主while循环中将背景
和其他所有内容显示在屏幕上
screen.blit(background, (0, 0))
screen.blit(text, text_rect)
这一行pygame.image.load('pygame\u Background.jpg')
从硬盘加载图像并将其转换为对象。现在,您有了这个曲面,并尝试像调用函数一样调用它,((W,H),0,32)
,这会导致类型错误,因为曲面对象不是函数(它不可调用)
你真正想做的是:
创建显示窗口(我在这里称之为screen
)
加载背景图像(最好称之为background
,因为Surface
是pygame.Surface
类的名称)
另外,调用pygame.Surface.convert
或convert\u alpha
方法来提高性能
在主while循环中将背景
和其他所有内容显示在屏幕上
screen.blit(background, (0, 0))
screen.blit(text, text_rect)
screen.blit(background, (0, 0))
screen.blit(text, text_rect)