我目前在教我自己的游戏编程,我已经开始使用pygame很好,很容易。我经历了一个教程,告诉我如何构建一个简单的游戏,现在我已经完成了它,我正在尝试以对我有意义的方式重新组织代码,并且编辑它并且添加到它。TypeError:无法连接'str'和'pygame.Surface'对象
我试图改变的一部分是,我没有为一个字符加载一个'.png'文件,而是加载了一个将在我设计的'move()'函数中迭代的列表。角色看起来像是在移动。然而,我不断遇到一个错误,我不知道为什么。近我的代码开始(所有我所做的是进口必要的模块和初始化pygame的和一些必要的变量)我试着做下面的代码:
badguyimgs = ['badguy.png', 'badguy2.png', 'badguy3.png', 'badguy4.png']
for img in badguyimgs:
badguyimgs.append(pygame.image.load("resources/images/" + img))
badguyimgs.remove(img)
我不断收到以下错误:
TypeError: cannot concatenate 'str' and 'pygame.Surface' objects
到目前为止,我试图初始化一个新变量(resource =“resources/images /”+ img),并将其放在“for”循环的开头,然后将其插入到pygame.image.load() 。我也尝试使用os.path.join(“resource/images /”+ img)。我试过使用完整路径名称(“c:\\ Users \\。\\ resources \\ images \\”+ img)。但是,任何时候我尝试连接路径名与列表中的文件名,我得到上面的错误代码。我试图寻找pygame文档,但没有看到任何有助于这种情况的东西。我试着用google搜索这个错误,但没有提到这个。 (尽管人们将int类型连接成字符串的问题很多,但我希望任何人都能帮助指出我为什么遇到这种情况,以及可以解决的问题。谢谢。
谢谢!我不能相信我错过了一点简单的逻辑。 – BlackBox