Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基本问题列表中的Python for x_Python - Fatal编程技术网

基本问题列表中的Python for x

基本问题列表中的Python for x,python,Python,我正在尝试创建一个函数,它将加载大量图像,并将它们映射到PyGame中的适当名称。我对python不是很在行,这真的让我陷入了困境。我目前的代码是: tile1 = pygame.image.load("/one.bmp") tile2 = pygame.image.load("/two.bmp") tile3 = pygame.image.load("/three.bmp") 它一直持续大约20瓦。问题是我刚刚发现我需要更多,我想知道如何使用for x in y循环来实现这一点。我的基本想法

我正在尝试创建一个函数,它将加载大量图像,并将它们映射到PyGame中的适当名称。我对python不是很在行,这真的让我陷入了困境。我目前的代码是:

tile1 = pygame.image.load("/one.bmp")
tile2 = pygame.image.load("/two.bmp")
tile3 = pygame.image.load("/three.bmp")
它一直持续大约20瓦。问题是我刚刚发现我需要更多,我想知道如何使用for x in y循环来实现这一点。我的基本想法是:

tile = ['/one.bmp', '/two.bmp', '/three.bmp']
tilelist = [1,2,3]
for tile in tile:
    tilelist[x] = pygame.image.load(tile)
或者类似的,但我不太清楚。我还想知道是否可以用字典来做

任何帮助都将不胜感激,谢谢:)

营救

tiles = ['/one.bmp', '/two.bmp', '/three.bmp']
tilelist = [pygame.img.load(tile) for tile in tiles]

如评论所述

…或更简单(?)tilelist=map(pygame.img.load,tiles)

加载数据

tile = ['/one.bmp', '/two.bmp', '/three.bmp']
imageMap = {}
for t in tile:
    imageMap[t] = pygame.img.load(t)

然后,您就拥有了字典中的所有数据,可以使用imageMap.keys()或直接将索引循环到字典中的文件名,以获得特定的图像。

您需要在该列表周围加上一些括号。应该是
pygame.img.load(tile)
@Rafe谢谢,我很久没有写过这么多python了。是的,谢谢大家。列表中的括号很有用:)或者更简单(?)tilelist=map(pygame.img.load,tiles)我丢弃了
优化
pygame
标记,因为它们与问题没有太大关系。