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 倍,而不是您想要的。
我遇到了另一个问题,尝试了很多其他方法,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 倍,而不是您想要的。