Перейти к содержанию

Функции для работы с последовательностями

Задание:

О нет! Кажется, мы перепутали ключи и значения в очень-очень важном словаре! Как хорошо, что вы уже выучили генераторы. Напишите функцию dict_reverse, которая принимает в качестве аргумента словарь и меняет местами его ключи и значения.

Загрузка тренажера...

Подсказка 1: генератор, возвращающий кортеж из двух аргументов, можно преобразовать в словарь функцией (dict()). А можно сразу использовать словарные включения (dictionary comprehension). Их синтаксис очень похож на синтаксис генераторов, однако они возвращают словари: {k: v for k, v in dict}.

Подсказка 2. У словарей есть метод dict.items(), позволяющий получать кортежи из пар ключ-значение.

Задание 2

В одном словаре находятся важные личные данные сотрудников, а в другом - семейное положение (True - свободен, False - женат). Ключами в обоих словарях являются их имена. Помогите Виталине убрать из словаря женатых сотрудников. Напишите функцию dict_filter, принимающую в качестве аргументов два словаря с одинаковыми ключами, и возвращающую первый словарь только с теми ключами, которые имеют значение True во втором словаре.

Загрузка тренажера...

Пример:

Словарь 1 Словарь2 Возвращаемый словарь
Игорь: value Игорь: True Игорь: value
Сергей: value2 Сергей: False
Юрий: value3 Юрий: 'Всё сложно'

Проверка

Загрузка тренажера...