我有多个文件需要加载,所以我使用 dict
来缩短文件。当我跑步时,我得到一个
TypeError: 'type' object is not subscriptable
错误。我怎样才能让它工作?
m1 = pygame.image.load(dict[1])
m2 = pygame.image.load(dict[2])
m3 = pygame.image.load(dict[3])
dict = {1: "walk1.png", 2: "walk2.png", 3: "walk3.png"}
playerxy = (375,130)
window.blit(m1, (playerxy))
原文由 Chanヨネ 发布,翻译遵循 CC BY-SA 4.0 许可协议
通常 Python 抛出
NameError
如果未定义变量:但是,您已经设法偶然发现了一个已存在于 Python 中的名称。
因为
dict
是 Python 中内置类型的名称,所以 您看到的似乎是一条奇怪的错误消息,但实际上并非如此。dict
的类型是type
。所有类型都是 Python 中的对象。因此,您实际上是在尝试索引type
对象。这就是错误消息说“’type’ 对象不可订阅”的原因。请注意,您可以盲目地分配给
dict
名称,但您 真的不想这样做。 以后只会给你带来麻烦。问题的真正根源是您必须在尝试使用变量之前分配变量。如果您简单地重新排列问题的陈述,它几乎肯定会起作用: