В работе с Python очень часто возникает потребность в создании словаря из отдельных списков ключей и значений. Возьмем для примера два списка: один со списком стран, а другой — с их столицами.
countries = ['Россия', 'США', 'Франция'] capitals = ['Москва', 'Вашингтон', 'Париж']
Задача — создать словарь, где страны будут ключами, а столицы — соответствующими значениями.
{'Россия': 'Москва', 'США': 'Вашингтон', 'Франция': 'Париж'}
Для решения этой задачи в Python существует несколько подходов.
Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Использование функции zip()
Один из наиболее простых и эффективных способов — использование встроенной функции zip()
, которая возвращает итератор кортежей, где первый элемент в каждом происходит из первого передаваемого аргумента, второй — из второго и так далее. Затем итератор можно преобразовать в словарь с помощью функции dict()
.
countries = ['Россия', 'США', 'Франция'] capitals = ['Москва', 'Вашингтон', 'Париж'] dictionary = dict(zip(countries, capitals))
В результате получаем требуемый словарь:
{'Россия': 'Москва', 'США': 'Вашингтон', 'Франция': 'Париж'}
На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.
Использование цикла for
Другой подход — использование цикла for
. В этом случае сначала создается пустой словарь, а затем в цикле для каждого ключа из списка ключей в словарь добавляется соответствующее значение из списка значений.
countries = ['Россия', 'США', 'Франция'] capitals = ['Москва', 'Вашингтон', 'Париж'] dictionary = {} for i in range(len(countries)): dictionary[countries[i]] = capitals[i]
В результате также получаем требуемый словарь:
{'Россия': 'Москва', 'США': 'Вашингтон', 'Франция': 'Париж'}
Выбор подхода зависит от конкретной задачи и предпочтений программиста. Оба метода позволяют быстро и просто решить поставленную задачу.
Добавить комментарий