关于pygame中pygame.image.load()的问题

在vscode中,使用pygame.image.load()加载相对路径的图片,提示报错,但使用绝对路径却可以。
如何解决相对路径无法加载的问题?(在不改变原图片存放位置的情况下)

path = 'images/bg.jpg'
bg = pygame.image.load(path)

最后提示:

pygame.error: Couldn't open images/bg.jpg

2个回答

是不是应该

path = './images/bg.jpg'
qq_37637939
qq_37637939 相对路径是对于你的py脚本而言的,你的脚本有没有放在诸如Script的文件夹里?
5 个月之前 回复
qq_33653078
youyou475 试了一下,还是一样的报错
5 个月之前 回复

可能你的编译器默认工作路径不是当前路径,可以在最开头加上这么一行:
os.chdir(os.path.dirname(sys.arvg[0]))
chdir()括号里面的是当前py程序路径的目录路径(上级路径),函数chdir()把该路径设为当前工作路径。然后在调用pygame.image.load()时编译器就会在当前目录下查找。

btw,任何时候都不推荐使用绝对路径,环境变一下你的程序就完蛋。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问