尝试在Python中使用元组作为字典键时的键错误(0,0)

时间:2012-01-21 18:39:59

标签: python

我收到了Key Error: (0, 0)。在我的代码的这一部分中,我试图在我的网格中创建具有键(x,y)的块的字典。 这是我的代码:

self.block_list = {}
for x in range(0, self.width):
    for y in range(0, self.height):
        self.block_list[(x, y)] 

我不明白为什么(0,0)没有包含在字典中。

2 个答案:

答案 0 :(得分:5)

这是一个空字典,您正在尝试检索该键的值。如果你想指定该键的值,那么你应该这样做。

self.block_list[(x, y)] = ...

答案 1 :(得分:3)

此代码不添加到字典,它从字典中查找值。由于字典为空,因此您获得KeyError

为密钥分配内容:

self.block_list = {}
for x in range(0, self.width):
    for y in range(0, self.height):
        self.block_list[(x, y)] = None

现在self.block_list初始化为None个值。