Skip to content

17. (П8) Виконання завдань зі словниками та множинами

Мета роботи

Навчитися описувати дані словником «ключ → значення», безпечно звертатися до ключів, додавати, змінювати й вилучати пари, рахувати та сортувати за допомогою словника, а також застосовувати множину для пошуку унікальних елементів і порівняння наборів даних.

Персоналізація обов'язкова

Кожне завдання має працювати з вашими справжніми даними: іменем, прізвищем, групою, розкладом цього семестру. Роботи з абстрактними {"a": 1, "b": 2}, {1, 2, 3} або з даними іншого студента не приймаються.

Підготовка

Кожне завдання виконуйте в окремому файлі: task1.py та task2.py. Теоретичний матеріал — лекція 16.

Ваші персональні дані

Перш ніж почати, випишіть ці значення — вони знадобляться в усіх завданнях.

Позначення Звідки береться Приклад Завдання
name ваше ім'я латиницею Ivan 1
surname ваше прізвище латиницею Petrenko 1
group ваша група PZ-11 1
city місто, де ви народилися Poltava 1
birth_year рік вашого народження 2007 1
hobbies щонайменше три ваші захоплення латиницею chess, running, guitar 1
розклад ваш реальний розклад: для кожного навчального дня — перелік предметів цього дня латиницею Mon: Programming, Math, English 2

Хід роботи

Завдання 1. Словник «про мене»

Файл task1.py.

  1. Створіть словник me з ключами name, surname, group, city, birth_year, hobbies (список ваших захоплень).
  2. Виведіть кожну пару окремим рядком, використавши items().
  3. Виведіть список ключів і кількість пар у словнику.
  4. Виведіть свою групу за ключем group і значення me.get("email", "unknown"). У коментарі поясніть одним реченням, чому me["email"] на цьому місці завершило б програму помилкою.
  5. Змініть словник і виведіть його після всіх змін:

    • додайте ключ email зі своєю навчальною поштою;
    • замініть city на будь-яке інше місто;
    • вилучіть birth_year через pop() і виведіть вилучене значення.
  6. Виведіть, чи є у словнику ключ phone.

Завдання 2. Розклад тижня

Файл task2.py.

  1. Створіть словник schedule: ключ — день тижня ("Mon", "Tue", …), значення — список предметів цього дня за вашим реальним розкладом.
  2. Виведіть таблицю: день, кількість пар цього дня, назви предметів через кому.
  3. Виведіть загальну кількість пар на тиждень.
  4. Виведіть день із найбільшою кількістю пар, використавши max з параметром key.
  5. Зберіть множину всіх різних предметів тижня і виведіть її разом із кількістю.
  6. Виведіть предмети, які є і в понеділок, і в середу, та предмети, які є в понеділок, але не в середу.
  7. Напишіть функцію, яка повертає словник «предмет → кількість пар на тиждень». Рахуйте через get().
  8. Виведіть рейтинг предметів від найбільшої кількості пар до найменшої з нумерацією від 1.

Знайшли помилку чи бажаєте додати інформацію, щоб покращити курс? Створіть issue на GitHub