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

问题描述

我遇到了另一个问题,尝试了许多其他方法来实现,这些方法都不是循环工作的,但是它们确实是单独工作的。

在“游戏”文件夹中,我有一个打开游戏的文件。然后在子文件夹图像中,我已经有了要使用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字符串。试试这个:

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倍而不是您想要的。