Python CodeLab 字典遍历

2 投票
1 回答
4347 浏览
提问于 2025-05-10 15:27

问题是:

这是我目前的进展:

dict(nafta_capitals) = canadian_capitals, mexican_capitals, us_capitals

给定三个字典,分别用变量 canadian_capitals、mexican_capitals 和 us_capitals 表示,这些字典将省或州与它们各自的首都对应起来。现在需要创建一个新的字典,将这三个字典合并在一起,并用变量 nafta_capitals 来表示这个新字典。

相关文章:

  • 暂无相关问题
暂无标签

1 个回答

0

你可能需要用到 defaultdict。在这里,nafta 被用作三个东西的关键字,分别是 canadian_capitalsmexican_capitalsus_capitals,如下所示:

>>>dic = defaultdict(list)
>>>lst = ['nafta1', 'canadian_capitals1', 'mexican_capitals1', 'us_capitals1', 'nafta2', 'canadian_capitals2', 'mexican_capitals2', 'us_capitals2']
>>>grouped_lst = [lst[i:i+4] for i in range(0,len(lst),4)]
>>>[['nafta1', 'canadian_capitals1', 'mexican_capitals1', 'us_capitals1'], ['nafta2', 'canadian_capitals2', 'mexican_capitals2', 'us_capitals2']]
>>>for i in grouped_lst:dic[i[0]]=i[1:]
>>>dic.items()
>>>[('nafta1', ['canadian_capitals1', 'mexican_capitals1', 'us_capitals1']), ('nafta2', ['canadian_capitals2', 'mexican_capitals2', 'us_capitals2'])]
>>>for i in dic.keys():print dic[i]
>>>['canadian_capitals1', 'mexican_capitals1', 'us_capitals1']
['canadian_capitals2', 'mexican_capitals2', 'us_capitals2']

撰写回答