# Тест по модулю 1. Вариант 30 Степанов Артём, А-02-23 ## Задание 1 Можно ли работать со средой без использования интерактивной оболочки IDLE? ## Ответ Да, со средой Python можно работать без использования интерактивной оболочки IDLE. Для этого необходимо открыть программу интерпретатор для используемой версии Python и после после симвогов приглашения к диалогу (">>>") вводить необходимые команды. ## Задание 2 Создайте объект-множество с 6 элементами - названиями статистик ("Колмогорова-Смирнова",:). Напишите инструкцию, доказывающую, что создан объект именно требуемого типа. Напишите инструкцию отображения списка атрибутов созданного объекта. ## Решение ```py >>> statistics = {"Стьюдента", "Фишера", "Колмогорова-Смирнова", "Пирсона", "Колмогорова", "Смирнова"} >>> type(statistics) # Проверка типа объекта >>> dir(statistics) # Отображение списка атрибутов объекта ['__and__', '__class__', '__class_getitem__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getstate__', '__gt__', '__hash__', '__iand__', '__init__', '__init_subclass__', '__ior__', '__isub__', '__iter__', '__ixor__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rsub__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__xor__', 'add', 'clear', 'copy', 'difference', 'difference_update', 'discard', 'intersection', 'intersection_update', 'isdisjoint', 'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update'] ``` ## Задание 3 Напишите инструкцию, позволяющую проверить наличие во множестве статистики Пирсона. Если ее нет во множестве - напишите инструкцию ее добавления, иначе - исключения из множества. Отобразите полученное множество. ## Решение ```py >>> "Пирсона" in statistics # Проверка наличия статистики Пирсона во множестве True >>> if ("Пирсона" in statistics): ... statistics.remove("Пирсона") # Если она в нём есть, то она удаляется из него, в противном случае - добавляется ... else: ... statistics.add("Пирсона") ... >>> statistics # Отображение измененного множества >>> {'Фишера', 'Стьюдента', 'Смирнова', 'Колмогорова-Смирнова', 'Колмогорова'} ``` ## Задание 4 Преобразуйте множество в список. Добавьте в конец списка ещё 2 статистики: Бартлетта и Крамера. Удалите из списка второй от начала элемент. Отобразите получившийся объект. ## Решение ```py >>> statisticsList = list(statistics) # Преобразование объекта-множества в список >>> type(statisticsList) # Проверка типа объекта >>> statisticsList.append("Бартлетта") # Добавление нового элемента в конец списка >>> statisticsList.append("Крамера") >>> statisticsList # Отображение списка после добавления 2 элементов ['Фишера', 'Стьюдента', 'Смирнова', 'Колмогорова-Смирнова', 'Колмогорова', 'Бартлетта', 'Крамера'] >>> statisticsList = [statisticsList[0],] + list(statisticsList[2:]) # Удаление второго с начала элемента списка >>> statisticsList # Отображение окончательного списка ['Фишера', 'Смирнова', 'Колмогорова-Смирнова', 'Колмогорова', 'Бартлетта', 'Крамера'] ``` ## Задание 5 Преобразуйте множество в символьную строку. Напишите инструкцию создания нового списка путем разделения строки на подстроки с разделителем "," (запятая). Отобразите полученный список. ## Решение ```py >>> statisticsStr = str(statistics) # Преобразование объекта-множества в символьную строку >>> type(statisticsStr) # Проверка типа объекта >>> statisticsStr # Отображение полученной символьной строки "{'Фишера', 'Стьюдента', 'Смирнова', 'Колмогорова-Смирнова', 'Колмогорова'}" >>> statisticsList2 = statisticsStr.split(",") # Разделение строки на список подстрок с разделителем "," >>> type(statisticsList2) # Проверка типа объекта >>> statisticsList2 # Отображение полученного списка ["{'Фишера'", " 'Стьюдента'", " 'Смирнова'", " 'Колмогорова-Смирнова'", " 'Колмогорова'}"] ```