我是python的新手,需要一些关于词典的帮助。我有一个文本文件
1;2;0.0008131
1;714;0.0001097
714;715;0.0016285
715;796;0.0014631
...
表示带有成本的图中的源节点和destiantion节点。我想读取文件并创建格式
的字典{'1': {'2': 0.0008131, '714': 0.0001097},
'2': {'1': 0.0008131, '523': 0.0001097},
'3': {'252': 0.0001052, '613':0.0002097},
对于每个相邻节点的节点以及它们之间的成本,等等。
答案 0 :(得分:0)
我认为以下简单代码应该适合您。
# Open your text file
f = open('file.dat')
# Create empty dictionary
graph = {}
for line in f:
x = line.rstrip().split(";")
if not x[0] in graph:
graph[x[0]] = {x[1] : x[2]}
else:
graph[x[0]][x[1]] = x[2]
if not x[1] in graph:
graph[x[1]] = {x[0] : x[2]}
else:
graph[x[1]][x[0]] = x[2]
print(graph)
graph
是您想要的最终字典。