Python 使用Pygame加载子文件夹中的图像
我在一个名为“项目”的文件夹中有一个Pygame项目。其中有我的代码和另一个名为“Images”的文件夹。我想将图像加载到“Images”文件夹中,但每次尝试加载时,都会出现一个错误,即: pygame.error:无法打开图像/Frame1.png 我试过使用:Python 使用Pygame加载子文件夹中的图像,python,pygame,Python,Pygame,我在一个名为“项目”的文件夹中有一个Pygame项目。其中有我的代码和另一个名为“Images”的文件夹。我想将图像加载到“Images”文件夹中,但每次尝试加载时,都会出现一个错误,即: pygame.error:无法打开图像/Frame1.png 我试过使用: image=pygame.image.load(“Frame1.png”) image=pygame.image.load(“Images/Frame1.png”),image=pygame.image.load(“Images/Fr
image=pygame.image.load(“Frame1.png”)
image=pygame.image.load(“Images/Frame1.png”)
,image=pygame.image.load(“Images/Frame1.png”).convert()
和image=pygame.image.load(“Images/Frame1.png”).convert\u alpha()
请记住,我只导入了Pygame模块
以上所有代码都会出现相同的错误。我正在为MacOSX使用PythonV3.7.3。任何帮助都将不胜感激。请尝试导入操作系统库,并使用
image=pygame.image.load(os.path.join(os.path.dirname(u文件),'Images','Frame1.png')。convert_alpha()
。这在我做自己的pygame项目时对我有效。图像文件路径必须相对于当前工作目录。工作目录可能与python文件的目录不同
差异可通过以下方式进行调查:
导入操作系统
currentWorkDir=os.getcwd()
打印(currentWorkDir)
sourceFileDir=os.path.dirname(os.path.abspath(_文件__))
打印(sourceFileDir)
另见
应用程序可以更改当前工作目录,使其与python源文件目录相同:
import os
sourceFileDir = os.path.dirname(os.path.abspath(__file__))
os.chdir(sourceFileDir)
加载图像文件时,也可以使用绝对路径,而不是更改工作目录。连接文件的目录和相对 图像文件路径:
sourceFileDir=os.path.dirname(os.path.abspath(_文件__))
image=pygame.image.load(os.path.join(sourceFileDir,“Images”,“Frame1.png”))
请共享文件夹结构运行代码时,工作目录是什么(os.getcwd()
),python文件的目录是什么(os.path.dirname(os.path.abspath(\u file\u))
)?路径必须相对于工作目录,并且工作目录可能与文件(或项目)的目录不同。图像的目录为~/Python\u Projects/project/Images/Frame1.png
。我的代码的目录是~/Python\u Projects/Project/FirstProject.py
您从哪里执行?尝试从“Project”文件夹运行python和脚本。@sombat92尝试导入操作系统print(os.getcwd())
。路径必须与此目录相对。或者将os.chdir(os.path.dirname(os.path.abspath(_文件__)))
放在代码开头。