Python Pygame-can';t在循环中加载图像。无循环工作
我遇到了另一个问题,尝试了许多其他的方法,没有一个循环工作,但它们单独工作 在游戏文件夹中,我有一个打开游戏的文件。然后在子文件夹图像中,我得到了所有我想用Pygame在屏幕上绘制的图像Python Pygame-can';t在循环中加载图像。无循环工作,python,image,pygame,load,Python,Image,Pygame,Load,我遇到了另一个问题,尝试了许多其他的方法,没有一个循环工作,但它们单独工作 在游戏文件夹中,我有一个打开游戏的文件。然后在子文件夹图像中,我得到了所有我想用Pygame在屏幕上绘制的图像 |Game |start_game.py |- images | | | image0.png | image1.png | image2.png 当我尝试逐个加载图像时,代码正常工作: image0 = pygame.image.load(os.getcwd(
|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倍。您忘记了使用
.format()
转换{num}
。请注意:当您正在修复时,也许您还可以考虑使用<代码> OS.Posi.Cube()/代码>而不是嵌入依赖于OS的路径分隔符。<代码> \图像\图像{num }。PNG < /COD> > >代码> F \图像\图像{NU}。PNG’< /代码>