我有一个包含所有可能单词(键)及其在拼字游戏板上的坐标(值)的字典。
我正在写一个代码,以便找到一个法律单词在黑板上的所有路径。
我创建了一个新字典,为了只包含合法的单词和路径,所以我想如果有一个单词有两个路径,我想把它合并到这个单词的相同值。
首先,我添加了第一个合法路径例如-
{"dog" : [(0,1),(0,2),(0,3)]}
现在我有了另一条路径-[(1,0),(2,0),(3,0)]我希望输出是-
{"dog" : [(0,1),(0,2),(0,3)],[(1,0),(2,0),(3,0)]}
我尝试了几个选项,但在所有的选项中我得到-
{"dog" : [(0,1),(0,2),(0,3),(1,0),(2,0),(3,0)]}
这不是我想要的。我很乐意得到任何帮助。
一个键只能保存一个值。您的期望输出是一个键的2个值。我认为嵌套数组是你想要的,它看起来像这样:
dict = {"dog" : [[(0,1),(0,2),(0,3)]]}
print("Initial dog paths: {}".format(dict["dog"]))
dict["dog"].append([(1,0),(2,0),(3,0)])
print("Final dog paths: {}".format(dict["dog"]))
输出:
Initial dog paths: [[(0, 1), (0, 2), (0, 3)]]
Final dog paths: [[(0, 1), (0, 2), (0, 3)], [(1, 0), (2, 0), (3, 0)]]
您需要从一个空列表或列表的列表开始,然后添加。
dictionary = {"dog" : []}
dictionary['dog'].append([(0,1),(0,2),(0,3)])
dictionary['dog'].append([(1,0),(2,0),(3,0)])
结果:
{'dog': [[(0, 1), (0, 2), (0, 3)], [(1, 0), (2, 0), (3, 0)]]}
每个键只能有一个值。如果您想存储多个值,在本例中是列表,您可以尝试一个列表的列表,如:
{"dog" : [[(0,1),(0,2),(0,3)]]}
在这种情况下,您可以将路径[(1,0),(2,0),(3,0)]附加到外部列表,字典将变成:
{"dog" : [[(0,1),(0,2),(0,3)],[(1,0),(2,0),(3,0)]]}
希望这对你有帮助!