IT-компания GURU разрабатывает мобильные приложения под iOS и программное обеспечение для Windows
Компания получила несколько заказов от клиентов. Необходимо обработать данные о проектах и подготовить аналитический отчет для руководителя
Исходные данные
guru_projects = [
{ "client": "Tesla", "product": "iOS App", "price": 4500, "completed": True },
{ "client": "BMW", "product": "Windows Software", "price": 2200, "completed": False },
{ "client": "Apple", "product": "iOS App", "price": 6800, "completed": True },
{ "client": "Google", "product": "Windows Software", "price": 3900, "completed": True },
{ "client": "Microsoft", "product": "Windows Software", "price": 2700, "completed": False } ]
Необходимо найти:
Общая стоимость
-
Рассчитайте общую стоимость всех проектов GURU
Завершенные проекты
-
Получите отдельный список только тех проектов, которые уже завершены
Крупные проекты
-
Получите список клиентов, стоимость проекта которых составляет более 3000 долларов
Результат должен содержать только имена клиентов: ["Tesla", "Apple", "Google"]
Стоимость проектов клиентов
Создайте новый словарь, где:
Пример: { "Tesla": 4500, "BMW": 2200, "Apple": 6800, "Google": 3900, "Microsoft": 2700 }
Количество проектов по типу продукта
Определите, сколько проектов GURU выполняет для каждого типа продукта
Результат должен выглядеть следующим образом: { "iOS App": 2, "Windows Software": 3 }
Самый дорогой проект
Найдите клиента, который заказал самый дорогой проект
При поиске нельзя использовать max() и sort()
Завершенные продукты
Получите список названий продуктов только для завершенных проектов
Пример: [ "iOS App", "iOS App", "Windows Software" ]
Завершенные проекты стоимостью более $3000
Получите список клиентов, проекты которых одновременно:
- завершены
- стоят больше 3000 долларов
Пример: ["Tesla", "Apple", "Google"]
Анализ продуктов
Создайте два отдельных списка:
- клиентов, заказавших iOS App
- клиентов, заказавших Windows Software
Пример:
iOS: ["Tesla", "Apple"]
Windows: ["BMW", "Google", "Microsoft"]
При выполнении задачи необходимо использовать:
- list
-
dict
-
for in
-
if
-
filter()
-
lambda
-
list comprehension
-
работу с вложенными словарями
-
создание новых списков и словарей
Необходимо самостоятельно определить, какой инструмент лучше использовать для каждой части задачи
Индивидуальное обучение Python — образование, достойное Вашего уровня:
программа курса