Я пытаюсь создать граф городов из файла.Каждый readline()
Я получаю три значения, a
, b
и c
.a
и b
- это строки, названия городов, а c
- это int
, стоимость пути между 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}}