Кейс 3: Работа со списками и словарями в Python

Last updated about 1 year ago
18 questions
Описание ситуации: Вы продолжаете работать стажером в компании "Технологии будущего", где вас попросили помочь автоматизировать несколько задач. На одном из утренних совещаний вы обсуждаете с коллегой, Марией, задачи, связанные с организацией и обработкой данных. Мария объясняет, что для эффективного выполнения повседневных задач в Python часто используют такие структуры данных, как списки и словари.
Объяснение терминов: Мария рассказывает: "Списки — это упорядоченные коллекции, в которых можно хранить различные элементы, например, данные о сотрудниках или товарах. Списки легко изменять, добавлять или удалять элементы, сортировать их и выполнять поиск. Важно помнить, что элементы в списках имеют нумерацию, начиная с нуля, и доступ к элементам осуществляется по их индексу.
Словари же — это коллекции, которые работают по принципу 'ключ-значение'. Например, можно хранить данные о клиентах, где ключом будет ID клиента, а значением — его информация. В отличие от списков, у словарей нет порядка, и доступ к данным осуществляется по ключу, а не по индексу. Это делает словари удобными для хранения информации, где каждому ключу соответствует уникальное значение."
После пояснений Марии, вам предстоит самостоятельно создать и использовать списки и словари для решения задач, которые помогут автоматизировать работу других отделов компании.
Проблемная ситуация: Освоить создание и считывание списков, а также методы работы со списками. Понять отличия между списками и словарями.
Исходные условия: Работа выполняется в Jupyter Notebook. Каждое задание выполняется в отдельной ячейке.
Форма выполнения задания: Индивидуальная работа, выполнение задач с обсуждением результатов.
Программные инструменты для выполнения:
- ПО: Jupyter Notebook
- Язык программирования: Python
Требования к результату выполнения задания: Предоставить .ipynb файл с выполненными заданиями, содержащий комментарии и примеры вывода данных.
Создайте файл в Jupiter notebook, назовите его фамилия_№группы.
1

Выберите оценку проделанной работы:

Запрос от отдела кадров: "Для подготовки отчетов нам нужен список всех сотрудников. Можешь создать список с именами сотрудников?"
Создайте список employees, содержащий имена сотрудников. Используйте метод print() для вывода списка. Убедитесь, что список сформирован корректно.
1

Выберите оценку проделанной работы:

Запрос от отдела аналитики: "Нам нужно добавить в список новые данные. Можешь добавить сотрудников к существующему списку?"
Используйте метод .append() для добавления нового сотрудника в список. Затем выведите обновленный список.
1

Выберите оценку проделанной работы:

Запрос от отдела управления запасами: "У нас есть список товаров. Можешь посчитать, сколько товаров находится в списке?"
Используйте функцию len() для определения количества элементов в списке products и выведите результат.
1

Выберите оценку проделанной работы:

Запрос от отдела маркетинга: "Нам нужно определить наиболее популярный продукт. Можешь отсортировать список товаров по популярности?"
Используйте метод .sort() для сортировки списка товаров products по возрастанию или убыванию. Выведите отсортированный список.
1

Выберите оценку проделанной работы:

Запрос от финансового отдела: "Нам нужно выделить основные категории расходов. Можешь создать словарь с категориями и суммой расходов по каждой категории?"
Создайте словарь expenses, где ключами будут категории расходов, а значениями — суммы. Выведите словарь на экран.
1

Выберите оценку проделанной работы:

Запрос от отдела логистики: "Мы работаем с товарами на складе. Можешь сделать программу, которая добавляет новый товар и обновляет его количество, если товар уже есть?"
Создайте словарь warehouse, где ключи — это названия товаров, а значения — их количество. Напишите скрипт, который добавляет товар или обновляет его количество, если он уже есть в словаре.
1

Выберите оценку проделанной работы:

Запрос от отдела IT: "Нам нужно найти информацию по конкретному ключу в базе данных. Можешь создать программу для поиска значений по ключу?"
Используйте словарь database, где ключи — это ID, а значения — информация о клиенте. Напишите программу, которая запрашивает ключ и выводит соответствующее значение, если оно существует.
1

Выберите оценку проделанной работы:

Запрос от отдела продаж: "Для анализа нам нужно посчитать, сколько раз каждый продукт был продан. Можешь создать словарь для подсчета?"
Создайте пустой словарь sales_count. Используйте список с названиями проданных товаров и заполните словарь, считая количество продаж каждого продукта. Выведите результат.
1

Выберите оценку проделанной работы:

Запрос от отдела клиентской поддержки: "Нам нужно организовать информацию по клиентам. Можешь создать словарь, где ключи — ID клиентов, а значения — их имена?"
Создайте словарь clients, в котором каждому ключу (ID клиента) соответствует имя клиента. Добавьте несколько записей в словарь и выведите его на экран.
1

Выберите оценку проделанной работы:

Запрос от отдела аналитики: "Можешь удалить данные по товарам, которые закончились? Используй список, чтобы удалить их из словаря."
Создайте словарь stock с товарами и их количеством. Используя цикл, удалите товары, у которых количество равно нулю, и выведите обновленный словарь.
1

Выберите оценку проделанной работы:

Запрос от руководителя: "Для общего отчета мне нужно объединить списки сотрудников из нескольких отделов. Можешь написать программу для объединения списков?"
Используя два или более списков сотрудников, объедините их с помощью метода .extend() или оператора +.
Выведите результат, убедившись, что списки объединились корректно.
1

Выберите оценку проделанной работы:

Финальная задача от отдела исследований: "Мы хотим получить полную информацию по продажам. Можешь создать программу, которая выводит данные по каждому продукту и общей сумме продаж?"
Создайте список продуктов и их продаж, используя словарь, где каждому продукту соответствует его сумма продаж. Используйте цикл для вывода данных по каждому продукту, а также рассчитайте общую сумму.
1

Выберите оценку проделанной работы:

Required
1

Загрузите файл с работой

Оцените свою работу с кейсом.
Следующий блок оценивается Вами и педагогом.
1

1. Активность участия

1

2. Решение проблем:

1

3. Применения теоретических знаний

1

4. Качество работы с кейсами