Python CodeLab 字典遍历
问题是:
这是我目前的进展:
dict(nafta_capitals) = canadian_capitals, mexican_capitals, us_capitals
给定三个字典,分别用变量 canadian_capitals、mexican_capitals 和 us_capitals 表示,这些字典将省或州与它们各自的首都对应起来。现在需要创建一个新的字典,将这三个字典合并在一起,并用变量 nafta_capitals 来表示这个新字典。
相关文章:
- 暂无相关问题
1 个回答
0
你可能需要用到 defaultdict
。在这里,nafta
被用作三个东西的关键字,分别是 canadian_capitals
、mexican_capitals
和 us_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']