Понимание словаря, которое содержит (встроенное) понимание списка - PullRequest
0 голосов
/ 23 мая 2019

Как мне вернуть каждую страну в качестве ключа и список городов в этой стране в качестве значения?Используя словарь и встроенное понимание списка?Без использования коллекций

country_city_tuples= [('Netherlands', 'Alkmaar'),
                  ('Netherlands', 'Tilburg'),
                  ('Netherlands', 'Den Bosch'),
                  ('Netherlands', 'Eindhoven'),
                  ('Spain', 'Madrid'),
                  ('Spain', 'Barcelona'),
                  ('Spain', 'Cordoba'),
                  ('Spain', 'Toledo'),
                  ('Italy', 'Milano'),
                  ('Italy', 'Roma')]

1 Ответ

2 голосов
/ 23 мая 2019

Вы можете сделать что-то вроде этого:

my_dict = {item[0]: [subitem for subkey, subitem in country_city_tuples if subkey == item[0]] for item in country_city_tuples}

Вывод будет выглядеть так:

{'Netherlands': ['Alkmaar', 'Tilburg', 'Den Bosch', 'Eindhoven'], 'Italy': ['Milano', 'Roma'], 'Spain': ['Madrid', 'Barcelona', 'Cordoba', 'Toledo']}
...