我正在尝试将图像加载到pygame的窗口中,但是当我运行代码时。弹出错误
pygame.error:无法打开backround.png
我将图像与代码本身放在同一文件夹中。我为另一个脚本完成了此操作,它工作得很好。我不确定是什么问题。
我尝试关闭程序。重命名文件,仅此而已。不确定如何解决该问题。任何帮助都非常感激
import pygame
import os
from Introduction import *
# Making the window
pygame.init()
windowSize = (800, 600)
screen = pygame.display.set_mode(windowSize)
# Images in the Introduction
GameBackround = pygame.image.load('backround.png')
while True:
screen.blit(GameBackround, (0,0))
for event in pygame.event.get():
screen.blit(GameBackround, (0,0))
pygame.display.update()
pygame.display.flip()
就像我说的那样:我曾使用过类似的布局来将图像加载到另一个文件中,并且效果很好,但是由于某种原因,它不能加载图像。
答案 0 :(得分:0)
图像文件路径必须相对于当前工作目录。工作目录可能与python文件的目录不同。
文件名和路径可以通过__file__
获取。当前工作目录可以通过os.getcwd()
来获取。
如果图像与python文件位于同一文件夹中,则您可以获取文件目录并连接图像文件名。例如:
import pygame
import os
from Introduction import *
# get the directory of this file
sourceFileDir = os.path.dirname(os.path.abspath(__file__))
# [...]
GameBackround = pygame.image.load(os.path.join(sourceFileDir, 'backround.png'))