From 239040ccf26c4d4576d404e68f89dbfe0c046ace Mon Sep 17 00:00:00 2001 From: Dmitry Kolomeytsev Date: Mon, 6 Oct 2025 10:41:12 +0300 Subject: [PATCH] final test completed --- TEMA3/test.md | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 65 insertions(+), 1 deletion(-) diff --git a/TEMA3/test.md b/TEMA3/test.md index 0f047f9..6e96ea4 100644 --- a/TEMA3/test.md +++ b/TEMA3/test.md @@ -4,4 +4,68 @@ ## Задание -## Решение \ No newline at end of file +M1_5. Условие в решении. + +## Решение + +1) Для чего предназначено предложение "Окно (Window)" главного меню: + +Если в IDLE открыты несколько окон, например Shell и несколько файлов, то Window покажет все окна, которые открыты, чтобы между ними можно было переключаться. + +2) Создайте объект-словарь с 8 элементами: ключи - фамилии студентов группы, значения - средние баллы по итогам сессии. +Напишите инструкцию, доказывающую, что создан объект именно требуемого типа. +Напишите инструкцию отображения списка атрибутов созданного объекта. + +```py +students = { + "Коломейцев": 5.01, + "Антонов": 3.8, + "Турханов": 4.9, + "Степанов": 4.2, + "Морозов": 3.5, + "Новиков": 5.0, + "Васильев": 4.1, + "Соколов": 4.7 +} +type(students) + +dir(students) +['__class__', '__class_getitem__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__ior__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__ror__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values'] +``` + +3) Пополните словарь еще двумя элементами. Отобразите получившийся объект. +Напишите инструкцию, позволяющую для указанного студента из словаря получить значение его среднего балла. +Напишите инструкцию для получения списка всех студентов, представленных в словаре. + +```py +students.update({"Aabaev":4.9, "Musk":3.1}) +students +{'Коломейцев': 5.01, 'Антонов': 3.8, 'Турханов': 4.9, 'Степанов': 4.2, 'Морозов': 3.5, 'Новиков': 5.0, 'Васильев': 4.1, 'Соколов': 4.7, 'Aabaev': 4.9, 'Musk': 3.1} +students.get('Musk') +3.1 +students.keys() +dict_keys(['Коломейцев', 'Антонов', 'Турханов', 'Степанов', 'Морозов', 'Новиков', 'Васильев', 'Соколов', 'Aabaev', 'Musk']) +``` + +4) У одного из студентов средний балл оказался на 0.2 меньше указанного в словаре. +Напишите инструкцию, исправляющую это значение в словаре. +Отобразите полученный объект. +Напишите инструкцию, вычисляющую общий средний балл для всех студентов, представленных в словаре. + +```py +students['Musk']+=0.2 +students +{'Коломейцев': 5.01, 'Антонов': 3.8, 'Турханов': 4.9, 'Степанов': 4.2, 'Морозов': 3.5, 'Новиков': 5.0, 'Васильев': 4.1, 'Соколов': 4.7, 'Aabaev': 4.9, 'Musk': 3.3} + +average_grade = sum(students.values()) / len(students) +average_grade +4.340999999999999 +``` + +5) Создайте список из названий 4-х учебных дисциплин и список с числом часов в неделю на изучение каждой из 4-х дисциплин. +Напишите инструкцию, позволяющую создать словарь, объединяющий эти два списка. + +```py +dict(zip(disciplines,hours)) # zip создает пары из элементов списка, dict создает словарь из этих пар +{'Math': 8, 'English': 4, 'Economics': 6, 'Philosophy': 2} +``` \ No newline at end of file