不确定我做错了什么,我正在学习如何使用 Python 和 PyGame 制作游戏的教程,但我收到错误消息:
pygame.error: Couldn't open resources/images/dude.png
我的代码如下:
import pygame
from pygame.locals import *
pygame.init()
width, height = 640, 480
screen=pygame.display.set_mode((width,height))
player = pygame.image.load("resources/images/dude.png")
while 1:
screen.fill(0)
screen.blit(player, (100,100))
pygame.display.flip()
for event in pygame.event.get():
if event.type==pygame.QUIT:
pygame.quit()
exit(0)
完整的错误信息是:
ALSA lib confmisc.c:768:(parse_card) cannot find card '0'
ALSA lib conf.c:4292:(_snd_config_evaluate) function
snd_func_card_driver returned error: No such file or directory
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4292:(_snd_config_evaluate) function snd_func_concat
returned error: No such file or directory
ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name
ALSA lib conf.c:4292:(_snd_config_evaluate) function snd_func_refer
returned error: No such file or directory
ALSA lib conf.c:4771:(snd_config_expand) Evaluate error: No such file or
directory
ALSA lib pcm.c:2266:(snd_pcm_open_noupdate) Unknown PCM default
Traceback (most recent call last):
File "/root/Documents/PyGame/game.py", line 9, in <module>
player = pygame.image.load("resources/images/dude.png")
pygame.error: Couldn't open resources/images/dude.png
原文由 Jacob Day 发布,翻译遵循 CC BY-SA 4.0 许可协议
改用相对路径(这样做总是更好):
通过这样做,无论您将包含
.py
文件的文件夹移动到哪里,它的子目录(以及它们包含的任何内容)仍然可以访问,而无需修改代码。最终代码:
对所有其他文件使用这种访问方法,您将避免一大堆问题。