Задана строка с именами людей и их текущими занятиями, перечисленными через запятую в произвольном порядке. Используя
Задана строка с именами людей и их текущими занятиями, перечисленными через запятую в произвольном порядке. Используя генераторы, создайте словарь, где имена будут ключами, а занятия - значениями. Решите задачу в одну строку. Пример: "Маша гуляет,Коля работает,дома Ваня" представить в виде {"Ваня":"дома", и т.д.}
Вечный_Сон 39
Хорошо, чтобы создать словарь, где имена являются ключами, а занятия - значениями, можно использовать генератор и метод split() для разделения строки на отдельные имена и занятия. Затем мы можем использовать функцию zip() для создания пар ключ-значение, а затем передать их в функцию dict() для создания словаря.Вот полное решение задачи в одну строку:
Пояснение решения:
1. Мы начинаем с разделения строки на отдельные пары имя-занятие с помощью метода split(",") - это создаст список отдельных пар.
2. Затем мы используем генератор для перебора каждой пары в списке.
3. Внутри генератора, мы снова разделяем каждую пару на отдельные имя и занятие с помощью метода split().
4. Теперь у нас есть пара [имя, занятие], и мы передаем ее в функцию dict(), которая принимает последовательность (итерабель) пар ключ-значение и создает словарь с этими парами.
Таким образом, мы получаем словарь с именами в качестве ключей и занятиями в качестве значений. Вот как будет выглядеть словарь для заданного примера:
Пожалуйста, дайте знать, если у вас есть еще вопросы!