我无法将图像加载到我的 pygame 程序中
I can't load images to my pygame program
我是 pygame 的新手,正在复制一个简单的教程。我正在使用 python 3.4.2。但我 运行 遇到了几个问题。这是我的代码:
import pygame
pygame.init()
screen = pygame.display.set_mode((640,480))
class Game(object):
def main(self,screen):
clock = pygame.time.Clock()
image = pygame.image.load('player.png').convert()
image_x=320
image_y=240
while True:
clock.tick(30)
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
if event.type == pygame.KEYDOWN and event.key== pygame.K_ESCAPE:
pygame.quit()
image_x+=10
screen.fill((200,200,200))
screen.blit(image,(320,240))
screen.blit(image,(image_x,image_y))
pygame.display.flip()
if __name__ == '__main__':
pygame.init()
screen=pygame.display.set_mode((640,480))
Game().main(screen)
第一个问题是我收到一条错误消息,指出 "Couldn't open player.png" 我将此图像保存在与我的 .py 游戏程序相同的文件夹中。其次,当我尝试退出游戏时,pygame window 冻结并停止响应。
经过一些调试,图像文件似乎实际上在一个子文件夹中。为了加载图像,您需要通过更改此行
来提供更准确的文件路径
image = pygame.image.load('player.png').convert()
像这样:
image = pygame.image.load('subfolder' + os.sep + 'player.png').convert()
不要忘记在文件顶部添加 import os
行,以便使用 os.sep
命令,使目录分隔符跨平台。
我是 pygame 的新手,正在复制一个简单的教程。我正在使用 python 3.4.2。但我 运行 遇到了几个问题。这是我的代码:
import pygame
pygame.init()
screen = pygame.display.set_mode((640,480))
class Game(object):
def main(self,screen):
clock = pygame.time.Clock()
image = pygame.image.load('player.png').convert()
image_x=320
image_y=240
while True:
clock.tick(30)
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
if event.type == pygame.KEYDOWN and event.key== pygame.K_ESCAPE:
pygame.quit()
image_x+=10
screen.fill((200,200,200))
screen.blit(image,(320,240))
screen.blit(image,(image_x,image_y))
pygame.display.flip()
if __name__ == '__main__':
pygame.init()
screen=pygame.display.set_mode((640,480))
Game().main(screen)
第一个问题是我收到一条错误消息,指出 "Couldn't open player.png" 我将此图像保存在与我的 .py 游戏程序相同的文件夹中。其次,当我尝试退出游戏时,pygame window 冻结并停止响应。
经过一些调试,图像文件似乎实际上在一个子文件夹中。为了加载图像,您需要通过更改此行
来提供更准确的文件路径image = pygame.image.load('player.png').convert()
像这样:
image = pygame.image.load('subfolder' + os.sep + 'player.png').convert()
不要忘记在文件顶部添加 import os
行,以便使用 os.sep
命令,使目录分隔符跨平台。