所以我试图将两个字典与两个相似的键结合起来。我在堆栈溢出中阅读了有关合并两个字典的帖子。但是,当我运行它时。它给了我一个 KeyError 错误,即使我在两个字典中都有所有键。这是代码:coordinates={'hello': (2, 6), 'hola': (2, 6), 'hella': (2, 6), 'heya': (2, 6), 'heyo': (2, 6), 'hill': (2, 6), 'halo': (2, 6), 'hall': (2, 6), 'hail': (2, 6), 'hay': (2, 6), 'hale': (2, 6), 'holy': (2, 6)}solution={'hello': 'right', 'hall': 'right', 'hella': 'left', 'hale': 'left', 'hail': 'down', 'heya': 'down', 'holy': 'down', 'hola': 'up', 'hay': 'down-right', 'hill': 'up-left', 'heyo': 'up-right', 'halo': 'down-left'}FINAL_SOL = [coordinates, solution]FINAL_DICT = {}for word in coordinates.keys(): FINAL_DICT[word] = tuple(FINAL_DICT[word] for d in FINAL_SOL)print(FINAL_DICT)我希望有一个具有这种格式的字典:'Key': (x,y), direction请帮助解决导致此错误的原因。谢谢!
1 回答
哈士奇WWW
TA贡献1799条经验 获得超6个赞
很确定你的意思是:
FINAL_DICT[word] = tuple(d[word] for d in FINAL_SOL)
不是:
FINAL_DICT[word] = tuple(FINAL_DICT[word] for d in FINAL_SOL)
因为这种方式(现在写的方式)会给你一个 KeyError,因为FINAL_DICT
最初是空的,并且绝对没有其他字典所做的任何键。
添加回答
举报
0/150
提交
取消