Pygame - 无法循环加载图像。无循环工作

Pygame - can't load images in a loop. Works without a loop

我遇到了另一个问题,尝试了很多其他方法,none 其中有一个循环工作,但它们确实单独工作。

在游戏文件夹中,我有一个打开游戏的文件。然后在子文件夹图像中,我使用 Pygame.

获得了我想在屏幕上绘制的所有图像
|Game
|start_game.py
|- images
|       |
|       image0.png
|       image1.png
|       image2.png

当我尝试一张一张地加载图像并且代码运行正常时:

image0 = pygame.image.load(os.getcwd() + '\images\image0.png')
image1 = pygame.image.load(os.getcwd() + '\images\image1.png')
...

但是为了更容易使用代码,我想使用 for 循环来更改 .png 文件的数量。

images=[]
for num in range(3):
    image = pygame.image.load(os.getcwd() + '\images\image{num}.png')
    images.append(image)

这里我得到了回溯:

FileNotFoundError: No such file or directory.

如何在 for 循环中导入它而不出错?

您可能想要使用 f-string。试试这个:

images=[]
for num in range(3):
    image = pygame.image.load(os.getcwd() + f'\images\image{num}.png')
    images.append(image)

您得到的是字符串“\images\image{num}.png”的 3 倍,而不是您想要的。