我有一本字典,里面有另一本字典和一些清单
flightsD={"Delta":{1102:[["IND",1850],["MDW",1955]],
1096:[["PHX",900],["MDW",1255]],
1445:[["ATL",1135],["LAX",1810]],
1776:[["PHL",1350],["RAP",1610]],
1226:[["PHX",950],["MDW",1345]],
1885:[["ATL",1305],["LAX",2000]],
1009:[["MDW",1850],["IND",1955]],
9001:[["MDW",2145],["IND",2255]]},
"Southwestern":{1111:[["SAT",430],["MDW",825]],
2121:[["MDW",430],["SAT",825]],
4335:[["PHX",450],["MDW",745]],
1102:[["MDW",1100],["PHX",1450]]},
"American":{7765:[["IND",1850],["CHA",2105]],
2133:[["BNA",900],["IND",1115]],
3321:[["HOU",1335],["ATL",1615]],
2100:[["BNA",900],["IND",1115]],
4311:[["HOU",905],["ATL",1255]],
5577:[["ATL",1100],["HOU",1350]],
1102:[["BNA",1100],["HOU",1450]]} }
如你所见,达美航空、西南航空和美国航空都有1102航班。我想把所有重复的航班列在字典里。 预期产量:
{1102: ['American', 'Southwestern', 'Delta']}
我尝试通过遍历字典访问这些值,如下所示:
for airline in flightsD:
for flights in flightsD[airline]:
我正在考虑制作一个列表来存储所有这些值,但我不完全确定如何去做
如果您想要一个只包含这些值的字典,可以使用下面的代码(基于上面的代码):
可以按如下方式使用
defaultdict
:您可以迭代dict项,使用
dict.setdefault
初始化带有要附加到的列表的输出dict,并使用dict理解来输出带有多个项的子列表的项:这将输出:
相关问题 更多 >
编程相关推荐