# Индивидуальное контрольное задание по теме 3 **Антонов Дмитрий, А-03-23** ## Задание M1_18 1) Можно ли, используя язык Python, создавать загрузочные программы, исполнимые в среде операционной системы? - Да, можно. Нужно создать скрипт с рсширением .py, для использования написать команду: ```py import #name of file .py ``` Так же для запуска можно использовать терминал: ```bash python3 #name of file .py ``` 2) Создайте объект-список с 20 убывающими по величине элементами, начиная от 115 с шагом 12. Напишите инструкцию, доказывающую, что создан объект именно требуемого типа. Напишите инструкцию отображения списка атрибутов созданного объекта. ### Решение - Способ 1 ```py i = 115 lst=[] lst.append(i) while(len(lst)!=20): lst.append(i-12) i-=12 ``` - Способ 2 ```py lst=[115 - 12*current for current in range(20)] lst [115, 103, 91, 79, 67, 55, 43, 31, 19, 7, -5, -17, -29, -41, -53, -65, -77, -89, -101, -113] type(lst) dir(lst) ['__add__', '__class__', '__class_getitem__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getstate__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'] ``` 3) Напишите инструкцию, проверяющую наличие в списке элемента со значением 47. Если его нет в списке, напишите инструкцию, добавляющую этот элемент в список так, чтобы не нарушить убывающий порядок элементов. Отобразите полученный список. ### Решение - Способ 1 ```py 47 in lst False lst.insert(4,47) lst [115, 95, 75, 55, 47, 35, 15, -5, -25, -45, -65, -85, -105, -125, -145, -165, -185, -205, -225, -245, -265] ``` - Способ 2 ```py lst.append(47) lst = sorted(lst,reverse=True) lst [115, 95, 75, 55, 47, 35, 15, -5, -25, -45, -65, -85, -105, -125, -145, -165, -185, -205, -225, -245, -265] ``` 4) Преобразуйте список в кортеж. Рассчитайте сумму 6 элементов кортежа, начиная с 5-го от начала. Выведите результат на экран в виде "Сумма элементов=ХХХ". ### Решение ```py lst = tuple(lst) sum_of_lst = sum(lst[4:4+6:1]) print("Сумма элементов={}".format(sum_of_lst)) Сумма элементов=22 ``` 5) Добавьте к кортежу элемент со значением 0. Удалите из него элемент со значением 55. Выведите полученный кортеж на экран. ### Решение ```py lst=lst+(0,) lst = lst[None:2:1]+lst[4:None:1] lst (115, 95, 47, 35, 15, -5, -25, -45, -65, -85, -105, -125, -145, -165, -185, -205, -225, -245, -265, 0) ```