Python CodeLab字典Travers

2024-09-27 23:22:08 发布

您现在位置:Python中文网/ 问答频道 /正文

问题是 到目前为止,我得到的是:

dict(nafta_capitals) = canadian_capitals, mexican_capitals, us_capitals

给出三个字典,与变量相关联,加拿大首都、墨西哥首都和美国首都,将省或州映射到各自的首都,创建一个新字典,将这三个字典合并,并将其与变量nafta_capitals相关联。在


Tags: 字典dictuscanadiancapitalsmexicannafta
1条回答
网友
1楼 · 发布于 2024-09-27 23:22:08

您可能需要使用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']

相关问题 更多 >

    热门问题