Python,pygame - 从列表中的字符串变量加载图像文件名?

时间:2015-03-05 03:54:07

标签: python string list pygame filenames

我是一个开始的pygamer试图升级我写给gui游戏的文字游戏。

animals = {dog: "Dog" 4 "Bone",
    cat: "Cat" 4 "Yarn",
    parrot: "Parrot" 2 "Bell"}

pet = animals[dog].split()

pet.append(pygame.image.load('//home/me/Desktop/Python/'+pet[0]+'.png')

如果我要输入上面的代码并尝试运行它,我得到:

  

pygame.error:无法打开// home / me / Desktop / Python /" Dog" .png

如何使用列表中的字符串变量加载文件而不将引号添加到文件名中?

1 个答案:

答案 0 :(得分:1)

只需用空字符串替换"中的pet[0]即可。

pet.append(pygame.image.load('//home/me/Desktop/Python/'+pet[0].replace('"', "")+'.png')

示例:

>>> animals = {'dog': '"Dog" 4 "Bone"',
    'cat': '"Cat" 4 "Yarn"',
    'parrot': '"Parrot" 2 "Bell"'}
>>> pet = animals['dog'].split()
>>> '//home/me/Desktop/Python/'+pet[0].replace('"', "")+'.png'
'//home/me/Desktop/Python/Dog.png'