【发布时间】:2017-10-06 06:22:28
【问题描述】:
所以我偶然发现了这个奇怪的错误。我制作了一个包含这些键的字典:
database_5x5 = {'(1, 0, 0, 0, 1)': [(0, 0), (0, 1)],
'(0, 1, 0, 1, 0)': [(0, 0), (0, 3)],
'(1, 1, 1, 0, 0)': [(0, 1)],
'(0, 0, 1, 1, 1)': [(0, 3)],
'(1, 0, 1, 1, 0)': [(0, 4)],
'(0, 1, 1, 0, 1)': [(0, 0)],
'(1, 1, 0, 1, 1)': [(0, 2)]
}
这是访问字典的代码:
bottom = tuple(puzzle[len(puzzle)-1])
next_moves = database_5x5[bottom]
我的代码运行并给了我这个错误:
KeyError: (0, 1, 1, 0, 1)
我不确定这里有什么问题... 感谢您的帮助!
【问题讨论】:
-
键是字符串,但看起来您正在尝试使用元组。
-
试试
database_5x5[str(bottom)] -
要么更改字典以将元组作为键,要么在查找时将元组转换为字符串(例如
database_5x5[str(bottom)])。
标签: python dictionary keyerror