Словарь в словаре с дублирующимися ключами Python
У меня есть перечень (ниже), где первое значение это город отправления, второе - город прибытия, третье - расстояние между городами.
city_A;city_B;148
city_B;city_A;148
city_A;city_C;178
city_C;city_A;178
city_F;city_A;162
city_A;city_F;162
city_F;city_C;168
city_C;city_F;170
city_F;city_E;141
city_E;city_F;141
city_B;city_D;169
city_D;city_B;169
city_A;city_G;2141
city_G;city_A;242
city_E;city_G;191
city_G;city_E;191
city_G;city_E;320
city_E;city_G;320
city_B;city_G;282
city_G;city_B;283
city_E;city_B;339
city_B;city_E;339
city_K;city_B;147
city_B;city_K;147
city_C;city_H;224
city_H;city_C;224
city_D;city_H;148
city_H;city_D;148
city_J;city_K;137
city_K;city_J;137
city_H;city_J;234
city_J;city_H;234
city_K;city_E;288
city_E;city_K;288
Я хотел сохранить эти данные как словарь в словаре предварительно сохранив данные в текстовый файл
odict = {}
for line in data_file:
line = line.rstrip()
line_list = line.split(";")
odict.update({line_list[0], {line_list[1]: line_list[2]}})
return odict
но проблема в том что у меня есть дубликаты ключей чего делать нельзя и я так и не понял можно ли это сделать вообще используя словари или вообще нужно переделать в структуру как список в списке или все-таки словарь а внутри него список. Далее используя полученную структуру мне нужно вывести на печать в таком виде:
city_A city_B 100
city_A city_C 200
city_A city_E 300
city_B city_A 100
city_C city_A 200
... и т.д
то-есть на печать город отправления в алфавитном порядке, и если у города отправления есть несколько городов прибытия, то города прибытия так же выводятся в алфавитном порядке.
Заранее спасибо