我正在尝试从文件中生成一张城市图。
每个readline()
都会返回三个值:a
,b
和c
。
a
和b
是城市名称的字符串,c
是整数,表示a
和b
之间的路径成本。
我该如何存储a
,b
和c
以便得到类似于
graph = {
'a1': {'b1': c1, 'b1': 5, 'a2': c2},
'a2': {'a1': c2},
'b1': {'a1': c1},
}
以下是我的代码的一部分:
dict = dict() #dictionary for storing values
while (True):
new_path = file.readline()
if new_path == "":
break
new_path = new_path.rstrip().split(", ")
a = new_path[0][2:len(new_path[0]) - 1] #start town
b = new_path[1][1:len(new_path[1]) - 1] #end town
c = new_path[2][0:len(new_path[2]) - 1] #path cost
print(a+" "+b+" "+c) #this prints Arlington Chelmsford 4
......既然我不知道字典中是否已经存在该关键字,如果字典中不存在该关键字,则我会尝试添加一个带有空值的关键字dict.keys()
,但是update()
将会产生一个奇怪的列表。
我是python新手,请告诉我如何创建这样一个不包含任何[]
符号的图表。非常感谢!
我想要的最终结果应该是这样的:
{'Arlington': {'Chelmsford': 4, 'Berkshire': 10}, 'Chelmsford': {'Arlington': 4, 'Berkshire': 5}, 'Berkshire': {'Arlington': 10, 'Chelmsford': 5}}