From 2e8f3ffa3d3ed02b892b4c915822ca13e32d8de9 Mon Sep 17 00:00:00 2001 From: GoloshchapovDY Date: Wed, 17 Sep 2025 21:25:02 +0300 Subject: [PATCH] =?UTF-8?q?=D0=BE=D1=82=D1=87=D0=B5=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA3/report.txt | 643 +++++++++++++++++++++++++++++++++++++++++++++++ TEMA3/task.md | 72 ++++++ TEMA3/task.txt | 0 3 files changed, 715 insertions(+) create mode 100644 TEMA3/report.txt create mode 100644 TEMA3/task.md create mode 100644 TEMA3/task.txt diff --git a/TEMA3/report.txt b/TEMA3/report.txt new file mode 100644 index 0000000..94b95b2 --- /dev/null +++ b/TEMA3/report.txt @@ -0,0 +1,643 @@ +# Отчет по теме 3 + +Голощапов Дмитрий, А-01-23 + +# 1 Подготовка к началу работы + +Запуск оболочки IDLE и установка рабочего каталога + >>> import os + >>> os.chdir('C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA3') + +# 2 Преобразование базовых типов обьектов в другие типы + +Было изучено, как преобразовывать обьекты одного типа, в обьекты другого типа. + +# 2.1 Преобразование обьектов в логический тип данных + +Было изучено, как преобразовывать обьекты типа строка и число, в обьекты логического типа. + + >>> logiz1=bool(56) + >>> logiz2=bool(0) + >>> logiz3=bool("Beta") + >>> logiz4=bool("") + >>> logiz1 + True + >>> type(logiz1) + + +# 2.2 Преобразование обьектов в числовой тип данных + +Было изучено, как преобразовывать обьекты типа строка и число, в обьекты целого и вещественного типа int и float. + + >>>tt1=int(198.6) #Отбрасывается дробная часть + >>>tt1 + 198 + >>>tt2=int("-76") #Число – в строке символов, система по умолчанию - десятичная + >>>tt2 + -76 + >>>tt3=int("B",16) #В шестнадцатиричной системе буква "В" соответствует числу 11 + >>>tt3 + 11 + >>>tt4=int("71",8) #71 преобразуется в число в восьмеричной системе + >>>tt4 + 57 + >>>tt5=int("98.76") #Число представлено в виде строки, но само по себе оно относится к вещественным числам (типа float), поэтому сразу невозможно его преобразовать в целое. Для такого преобразования надо сначала переопределить его как float, а уже потом как int. + Traceback (most recent call last): + File "", line 1, in + tt5=int("98.76") + ValueError: invalid literal for int() with base 10: '98.76' + >>>flt1=float(789) + >>>flt1 + 789.0 + >>>flt2=float(-6.78e2) + >>>flt2 + -678.0 + >>>flt3=float("Infinity") + >>>flt3 + inf + >>>flt4=float("-inf") + >>>flt4 + -inf + +# 2.3 Преобразование целочисленных обьектов в строки с двоичным, восьмеричным и шестнадцатеричным представлением и обратное представление + +Были преобразованы целочисленных обьекты в строки с двоичным, восьмеричным и шестнадцатеричным представлением и обратно представлены в целочисленном виде. + + >>>hh=123 + >>>dv1=bin(hh) #Преобразование в строку с двоичным представлением + >>>vos1=oct(hh) # Преобразование в строку с восьмеричным представлением + >>>shs1=hex(hh) # Преобразование в строку с шестнадцатеричным представлением + >>>dv1 + '0b1111011' + >>>vos1 + '0o173' + >>>shs1 + '0x7b' + >>>int(dv1,2) + 123 + >>>int(vos1, 8) + 123 + >>>int(shs1, 16) + 123 + +# 3 Преобразование сложных типов обьектов в другие типы + +# 3.1 Преобразование элементов в строку символов + +В строку были преобразованы число, логическая переменная, список, кортеж и словарь. + + >>>strk1=str(23.6) + >>>strk1 + '23.6' + >>>strk2=str(logiz3) + >>>strk2 + 'True' + >>>strk3=str(["A","B","C"]) #Преобразуем список + >>>strk3 + "['A', 'B', 'C']" + >>>strk4=str(("A","B","C")) #Преобразуем кортеж + >>>strk4 + "('A', 'B', 'C')" + >>>strk5=str({"A":1,"B":2,"C":9}) #Преобразуем словарь + >>>strk5 + "{'A': 1, 'B': 2, 'C': 9}" + +# 3.2 Преобразование элементов в список + +Были преобразованы в список строка символов, кортеж и словарь тремя способами (включая только ключи, только значения и ключи и значения вместе). + + >>>spis1=list("Строка символов") #Заданная строка разделяется на символы + >>>spis1 + ['С', 'т', 'р', 'о', 'к', 'а', ' ', 'с', 'и', 'м', 'в', 'о', 'л', 'о', 'в'] + >>>spis2=list((124,236,-15,908)) #Кортеж превращается в список + >>>spis2 + [124, 236, -15, 908] + >>>spis3=list({"A":1,"B":2,"C":9}) #Преобразование словаря в список + >>>spis3 + ['A', 'B', 'C'] + >>>spis3=list({"A":1,"B":2,"C":9}.values()) #Преобразование словаря в список по значениям + >>>spis3 + [1, 2, 9] + >>>spis3=list({"A":1,"B":2,"C":9}.items()) #Преобразование словаря в список ключи и значения + >>>spis3 + [('A', 1), ('B', 2), ('C', 9)] + +# 3.3 Преобразование элементов в кортеж + +В кортеж были преобразованы строка, список и словарь. + + >>>kort7=tuple('Строка символов') #Преобразование строки символов в кортеж + >>>kort7 + ('С', 'т', 'р', 'о', 'к', 'а', ' ', 'с', 'и', 'м', 'в', 'о', 'л', 'о', 'в') + >>>kort8=tuple(spis2) #Преобразование списка в кортеж + >>>kort8 + (124, 236, -15, 908) + >>>kort9=tuple({"A":1,"B":2,"C":9}) #Преобразование словаря в кортеж + >>>kort9 + ('A', 'B', 'C') + +# 3.4 Удаление обьектов + +Были удалены два обьекта и проверено их наличие. Так же самостоятельно была создана строка, которая была потом преобразована в список, затем список – в кортеж и, кортеж – в строку. + + >>>del strk5, kort8 + >>>strk5 + Traceback (most recent call last): + File "", line 1, in + strk5 + NameError: name 'strk5' is not defined. Did you mean: 'strk1'? + >>>kort8 + Traceback (most recent call last): + File "", line 1, in + kort8 + NameError: name 'kort8' is not defined. Did you mean: 'kort7'? + >>> f_str="Голощапов Д.Е." + >>> f_spis=list(f_str) + >>> f_kort=tuple(f_spis) + >>> f_sstr=str(f_kort) + >>> f_spis + ['Г', 'о', 'л', 'о', 'щ', 'а', 'п', 'о', 'в', ' ', 'Д', '.', 'Е', '.'] + >>> f_kort + ('Г', 'о', 'л', 'о', 'щ', 'а', 'п', 'о', 'в', ' ', 'Д', '.', 'Е', '.') + >>> f_sstr + "('Г', 'о', 'л', 'о', 'щ', 'а', 'п', 'о', 'в', ' ', 'Д', '.', 'Е', '.')" + +# 4 Изучение арифметических операций + +Были применены и изучены различные арифметические операции с числами целого, вещественного и комплексного типа. + +# 4.1 Изучение сложения и вычитания + +Были применены операции сложения и вычитания с различными числами. + + >>>12+7+90 # Сложение целых чисел + 109 + >>>5.689e-1 - 0.456 #Вычитание вещественных чисел + 0.11289999999999994 + >>>23.6+54 #Сложение вещественного и целого чисел + 77.6 + >>>14-56.7+89 # Сложение и вычитание целых и вещественных чисел + 46.3 + +# 4.2 Изучение умножения + +Было умножено вещественное число на целое. + + >>>-6.7*12 #Умножение вещественного числа на целое число + -80.4 + +# 4.3 Изучение деления с результатом - вещественным числом + +Было произведено деление чисел на целое число и проверен класс результативной переменной. + + >>>-234.5/6 #Деление вещественного числа на целое + -39.083333333333336 + >>>a=178/45 #Деление двух целых чисел – проверьте тип объекта a! + >>>a + 3.9555555555555557 + >>>type(a) + + +# 4.4 Изучение деления с округлением вниз + +Был применен операнд деления с округлением вниз, деление испробовано на целых и вещественных числах и выведен тип результативной переменной. + + >>>b=178//45 #Деление двух целых чисел + >>>b + 3 + >>>type(b) + + >>>c=-24.6//12.1 #Деление двух вещественных чисел + >>>c + -3.0 + >>>type(c) + + >>>ddd=56.88//45 + >>>ddd + 1.0 + >>>type(ddd) + + >>>eee=45//56.88 + >>>eee + 0.0 + >>>type(eee) + + +# 4.5 Изучение получения отсатка от деления + +Был применен операнд остатка от деления, операция применена по отношению к целым и вещественным числам. + + >>>148%33 #Остаток от деления двух целых чисел + 16 + >>>12.6%3.8 #Остаток от деления двух вещественных чисел + 1.2000000000000002 + >>>148%3.9 + 3.7000000000000033 + >>>3.9%2 + 1.9 + +# 4.6 Изучение возведения в степень + +Была применена операция возведения в степень с вещественными и целыми числами. + + >>>14**3 #Целое число возводится в целую степень + 2744 + >>>e=2.7**3.6 #Вещественное число возводится в вещественную степень + >>>e + 35.719843790663525 + >>>2.7**3 + 19.683000000000003 + >>>3**2.7 + 19.419023519771343 + +Также самостоятельно были произведены операции над комплексными числами. Выяснено, что выполнимы все вышеприведенные операции, кроме деления с округлением вниз и определения остатка. + + >>>kom1=5+2j + >>>kom2=3+7j + >>>kom1+kom2 + (8+9j) + >>>kom1-kom2 + (2-5j) + >>>kom1*kom2 + (1+41j) + >>>kom1/kom2 + (0.5-0.5000000000000001j) + >>>kom1//kom2 + Traceback (most recent call last): + File "", line 1, in + kom1//kom2 + TypeError: unsupported operand type(s) for //: 'complex' and 'complex' + >>>kom1//3 + Traceback (most recent call last): + File "", line 1, in + kom1//3 + TypeError: unsupported operand type(s) for //: 'complex' and 'int' + >>>kom1%kom2 + Traceback (most recent call last): + File "", line 1, in + kom1%kom2 + TypeError: unsupported operand type(s) for %: 'complex' and 'complex' + >>>kom1%3 + Traceback (most recent call last): + File "", line 1, in + kom1%3 + TypeError: unsupported operand type(s) for %: 'complex' and 'int' + >>>kom1**4 + (41+840j) + >>>kom1**kom2 + (10.184748623043754+3.841522923031664j) + +# 5 Изучение операций с двоичными представлениями целых чисел + +Были произведены различные операции с двоичным представлением целых чисел. + +# 5.1 Изучение двоичной инверсии + +Была применена двоичная инверсия. + + >>>dv1=9 + >>>dv2=~dv1 + >>>dv2 + -10 + +# 5.2 Изучение двоичного И + +Была применена операция двоичного И. + + 7&9 # 111 и 1001 = 0001 + 1 + 7&8 # 111 и 1000 = 0000 + 0 + +# 5.3 Изучение двоичного ИЛИ + +Была применена операция двоичного ИЛИ. + + >>>7|9 # 111 или 1001 = 1111 + 15 + >>>7|8 # 111 или 1000 = 1111 + 15 + >>>14|5 # 1110 или 0101 = 1111 + 15 + +# 5.4 Изучение двоичного исключающего ИЛИ + +Была применена операция двоичного исключающего ИЛИ. + + >>>14^5 # 1110 исключающее или 0101 = 1011 + 11 +Число 11 получилось при переводе числа 1011 из двоичной системы в десятичную. Это можно сделать с помощью выражения: 1*2^3 + 0*2^2 + 1*2^1 + 1*2^0 = 8 + 0 + 2 + 1 = 11 + +# 5.5 Изучение сдвига двоичного представления на заданное число разрядов влево или вправо с дополнением нулями + +Был произведен сдвиг двоичного представления влево и вправо с дополнением нулями. + + >>>h=14 #Двоичное представление = 1110 + >>>g=h<<2 # Новое двоичное представление = 111000 + >>>g + 56 + >>>g1=h>>1 # Новое двоичное представление = 0111 + >>>g1 + 7 + >>>g2=h>>2 # Новое двоичное представление = 0011 + >>>g2 + 3 + +Самостоятельно были созданы два двоичных числа с 7-ю знаками и произведены операции над ними. + + >>>bin1 = int("0101010", 2) + >>>bin2 = int("1100101", 2) + >>>bin3 = ~bin1 + >>>bin3 + -43 + >>>bin1&bin2 + 32 + >>>bin1|bin2 + 111 + >>>bin1^bin2 + 79 + >>>bin1>>3 + 5 + >>>bin1<<6 + 2688 + +# 6 Изучение операций при работе с последовательностями (строками, списками, кортежами) + +# 6.1 Изучение обьединения обьектов различных типов + +Были обьеденены строки, списки и кортежи. + +>>>'Система '+'регулирования' #Соединение двух строк символов +'Система регулирования' +>>>['abc','de','fg']+['hi','jkl'] # Объединение двух списков +['abc', 'de', 'fg', 'hi', 'jkl'] +>>>('abc','de','fg')+('hi','jkl') # Объединение двух кортежей +('abc', 'de', 'fg', 'hi', 'jkl') + +# 6.2 Изучение повторения элементов обьекта различных типов + +Было произведено повторение строки, списка и кортежа + + >>>'ля-'*5 #Повторение строки 5 раз + 'ля-ля-ля-ля-ля-' + >>>['ку','-']*3 #Повторение списка 3 раза + ['ку', '-', 'ку', '-', 'ку', '-'] + >>>('кис','-')*4 #Повторение кортежа 4 раза + ('кис', '-', 'кис', '-', 'кис', '-', 'кис', '-') + >>>signal1=[0]*3+[1]*99 + >>>signal2=(0,)*3+(1,)*5+(0,)*7 + >>>signal1 + [0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + >>>signal2 + (0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0) + +# 6.3 Изучение проверки наличия элементов в обьекте + +Было проверено наличие определенных элементов в строке, списке и кортеже. + + >>>stroka='Система автоматического управления' + >>>'автомат' in stroka #Наличие подстроки в строке + True + >>>'ку' in ['ку','-']*3 #Наличие контекста в списке + True + >>>'ля-' in ('abc', 'de', 'fg', 'hi', 'jkl') #Наличие контекста в кортеже + False + +# 6.4 Изучение подстановки элементов в обьект + +Была произведена подстановка чисел и строки в обьект. + + >>>stroka='Температура = %g %s %g' + >>>stroka % (16,' меньше ',25) + 'Температура = 16 меньше 25' + >>>stroka='Температура = %(zn1)g %(sravn)s %(zn2)g' + >>>stroka % {'zn1':16,'sravn':' меньше ','zn2':25} + 'Температура = 16 меньше 25' + +# 7 Изучение оператора присваивания + +# 7.1 Изучение присваивания для переменной + +Была создана переменная и ей присвоено определенное значение. + + >>>zz=-12 + >>>zz + -12 + +# 7.2 Изучение изменения заданной переменной на определенную величину + +Значение переменной было увеличено и потом уменьшено на определенное значение. + + >>>zz+=5 # Значение zz увеличивается на 5 + >>>zz-=3 # Значение уменьшается на 3 + >>>zz + -10 + +# 7.3 Изучение умножения и деления переменной + +Переменная была умножена, а потом поделена на определенное значение. Также самостоятельно был применен этот операнд для строки, в последствии чего символы в строке продублировались столько раз, какое было умножаемое число. + + >>>zz/=2 + >>>zz + -5.0 + >>>zz*=5 + >>>zz + -25.0 + >>>xxx="zz" + >>>xxx*=5 + >>>xxx + 'zzzzzzzzzz' + +# 7.4 Изучение деления с округлением вниз, получение остатка деления и возведение в степень + +На переменной были самостоятельно испробованы операции деления с округлением вниз, получение остатка деления и возведение в степень. + + >>>zz//=3 + >>>zz + -9.0 + >>>zz%=2 + >>>zz + 1.0 + >>>zz**=3 + >>>zz + 1.0 + +# 7.5 Изучение множественного присваивания + +Разным переменным было присвоено одно значение. Также были присвоены значения переменным в одну строку с использованием кортежа, + + >>>w=v=10 # Переменным присваивается одно и то же значение + >>>w + 10 + >>>v + 10 + >>>n1,n2,n3=(11,-3,'all') #Значения переменных берутся из кортежа, строки, списка и словаря. + >>>n1;n2;n3 + 11 + -3 + 'all' + >>>n1,n2,n3="11", "-3", "all" + >>>n1;n2;n3 + '11' + '-3' + 'all' + >>>n1,n2,n3=[11,-3,'all'] + >>>n1;n2;n3 + 11 + -3 + 'all' + >>>n1,n2,n3={11: 3,-3:7,'all':8} + >>>n1;n2;n3 + 11 + -3 + 'all' + +# 8 Изучение логических операций + +Были изучены и применены некоторые логические операции, а также некоторые действия, с помощью логических операций. + +# 8.1 Изучение операций сравнения + +К двум переменным были применены различные операции сравнения. + + >>>w==v + True + >>>w!=v + False + >>>w>v + False + >>>w>>w<=v + True + >>>w>=v + True + +# 8.2 Изучение проверки наличия элемента в обьекте с помощью логических операций + +Были созданы множество и словарь, и проверено имеются ли в них определенные элементы. + + >>>mnoz1={'pen','book','pen','iPhone','table','book'} + >>>'book' in mnoz1 + True + >>>'cap' in mnoz1 + False + >>>dic1={'Saratov':145, 'Orel':56, 'Vologda':45} + >>>'Vologda' in dic1 + True + >>>'Pskov' in dic1 + False + >>>56 in dic1.values() + True + >>>dct1={'Institut':['AVTI','IEE','IBB'],'Depart':['UII','PM','VMSS','MM'],'gruppa': ['A-01-15','A-02-15']} + >>>'UII' in dct1['Depart'] + True + >>>dct1['Depart'][1] == 'MM' + False + +# 8.3 Изучение создания выражений с соединительными словами И, ИЛИ, НЕ + +Были построены выражения с соединитиельными словами И, ИЛИ, НЕ. + + >>>a=17 + >>>b=-6 + >>>(a>=b) and ('book' in mnoz1) and not ('Pskov' in dic1) + True + >>>(5>6) and ('kazan' in dic1) and not ('lozhka' in mnoz1) + False + >>>(5>6) and (7>5) or ("Saratov" in dic1) + True + +# 8.4 Изучение проверки ссылок переменных на наличие одного и того же обьекта + +Было проверено, являются ли созданные обьекты одними и теми же обьектами в памяти. + + >>>w=v=10 #При таком присваивании переменные ссылаются на один и тот же объект в оперативной памяти + >>>w is v + True + >>>w1=['A','B'] + >>>v1=['A','B'] + >>>w1 is v1 #В данном случае эти переменные не записаны в один адрес памяти, питон создает для списков два разных обьекта, так как список это изменяемый тип и так как значение для переменных присваивалось по-отдельности. Так питон гарантирует, что изменение одного списка не повлияет на другой. + False + +# 9 Изучение операций с обьектами, проводимыми с помощью методов + +Была создана строка и выведены все атрибуты для нее. + + >>>stroka='Микропроцессорная система управления' + >>>dir(stroka) + ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'removeprefix', 'removesuffix', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] + +# 9.1 Изучение методов применимых для строки + +Были применены разные методы для работы со строками. + + >>>stroka.find('пр') #Возвращает номер позиции первого вхождения указанного контекста или значение -1 + 5 + >>>stroka.count("с") #Подсчет числа вхождений строки “с” в stroka + 4 + >>>stroka.replace(' у',' автоматического у') + 'Микропроцессорная система автоматического управления' + >>>spis22=stroka.split(' ') #Возвращает список подстрок, между которыми в строке стоит заданный разделитель + >>>spis22 + ['Микропроцессорная', 'система', 'управления'] + >>>stroka.upper() #Возвращает строку со всеми заглавными буквами + 'МИКРОПРОЦЕССОРНАЯ СИСТЕМА УПРАВЛЕНИЯ' + >>>stroka3=" ".join(spis22) #Возвращает строку, собранную из элементов списка + >>>stroka3 + 'Микропроцессорная система управления' + >>>stroka3.partition("с") #Возвращает кортеж с результатами поиска «с» слева + ('Микропроце', 'с', 'сорная система управления') + >>>stroka3.rpartition("с") #Возвращает кортеж с результатами поиска «с» справа + ('Микропроцессорная си', 'с', 'тема управления') + >>>strk1='Момент времени {}, значение = {}' + >>>strk1.format(1,89.7) + 'Момент времени 1, значение = 89.7' + >>>strk2='Момент времени {1}, значение = {0}:{2}' + >>>strk2.format(36.7,2,'норма!') + 'Момент времени 2, значение = 36.7:норма!' + >>>strk3='Момент времени {num}, значение = {znch}' + >>>strk3.format(znch=89.7,num=2) + 'Момент времени 2, значение = 89.7' + +# 9.2 Изучение методов применимых к спискам + +Были применены разные методы для работы со списками. + + >>>spsk=[4, "a", 5, 7, 9] + >>>dir(spsk) + ['__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'] + >>>spsk.pop(2) + 5 + >>>spsk + [4, 'a', 7, 9] + >>>spsk.append('c') #К списку прибавляется строка "с" + >>>spsk + [4, 'a', 7, 9, 'c'] + >>>spsk.insert(2,'a') #На 2 место в списке вставляется строка "а" + >>>spsk + [4, 'a', 'a', 7, 9, 'c'] + >>>spsk.count('a') #Считается количество "а" в списке + 2 + +# 9.3 Изучение методов применимых к кортежам + +Были применены разные методы для работы с кортажами и применен один из них. + + >>>kor=(2, "k") + >>>dir(kor) + ['__add__', '__class__', '__class_getitem__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'count', 'index'] + >>>kor.index(2) + 0 + +# 9.4 Изучение методов применимых к словарям + +Были применены разные методы для работы со словарями и применен один из них. + + >>>dirr={"A":3, "B":4} + >>>dir(dirr) + ['__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'] + >>>dirr.keys() + >>>dict_keys(['A', 'B']) + +# 10 Завершение работы в IDLE \ No newline at end of file diff --git a/TEMA3/task.md b/TEMA3/task.md new file mode 100644 index 0000000..3c776f3 --- /dev/null +++ b/TEMA3/task.md @@ -0,0 +1,72 @@ +# Общее контрольное задание по теме 3 + +Голощапов Дмитрий, А-01-23 + +# Задание + +Реализовать, записать в текстовый файл и проанализировать результаты последовательности ин-струкций, выполняющих следующие действия: + +•Преобразовать восьмеричное значение 45 в целое число. + +•Создать объект-словарь D со значениями {"усиление":23, "запаздывание":12, "постоянная времени":78} и затем осуществить его преобразование в два списка: ключей и значений, а за-тем – эти два списка преобразовать в один кортеж. Чем отличается кортеж от списка? + +•Напишите и выполните единое выражение, осуществляющее деление числа 1768 на 24.8 с округлением вниз, с определением после этого остатка от деления получившегося значения на 3 и затем возведения результата в степень 2.4. + +•Напишите и выполните единое выражение, последовательно осуществляющее следующие операции: двоичное И для чисел 13 и 27, инверсия полученного значения, двоичное исключа-ющее ИЛИ для полученного значения и числа 14, сдвиг полученного значения на два разряда влево. + +•Создать список с 4 одинаковыми элементами 'колебат' и написать оператор проверки наличия комбинации символов 'аткол' в результате конкатенации второго и третьего элементов этого списка. + +•Определить список методов, доступных у ранее созданного словаря D. Поочередно использо-вать его методы keys и values, определить, что можно получить с применением этих методов. + +•Создать объект - символьную строку с текстом данного предложения. Из символьной строки создать список, элементами которого будут отдельные слова из созданной строки. Заменить в списке элемент «-» на «,». Удалить из списка элемент со значением «данного». Отобразить получившийся список. + +# Решение + + >>>a = int("45", 8) + >>>a + 37 + >>>D={"усиление":23, "запаздывание":12, "постоянная времени":78} + >>>spis1=list(D) + >>>spis1 + ['усиление', 'запаздывание', 'постоянная времени'] + >>>spis2=list(D.values()) + >>>spis2 + [23, 12, 78] + >>>kor=tuple(spis1)+tuple(spis2) #Список отличается от кортежа тем, что список изменяем, а кортеж нет. + >>>kor + ('усиление', 'запаздывание', 'постоянная времени', 23, 12, 78) + >>>((1768//24.8)%3)**2.4 + 5.278031643091577 + >>>((~(13&27))^14)<<2 + -32 + >>>spis3=["колебат", "колебат", "колебат", "колебат" ] + >>>'аткол' in spis3[1] + spis3[2] + True + >>>dir(D) + ['__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'] + >>>help(D.keys) + Help on built-in function keys: + + keys() method of builtins.dict instance + Return a set-like object providing a view on the dict's keys. + + >>>help(D.values) + Help on built-in function values: + + values() method of builtins.dict instance + Return an object providing a view on the dict's values. + + >>>D.keys() #Этот метод отображает ключи словаря + dict_keys(['усиление', 'запаздывание', 'постоянная времени']) + >>>D.values() #Этот метод отображает знаечния словаря + dict_values([23, 12, 78]) + >>>S="Создать объект - символьную строку с текстом данного предложения" + >>>L=list(S.split()) + >>>L + ['Создать', 'объект', '-', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения'] + >>>L[L.index("-")] = "," + >>>L + ['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения'] + >>>L.remove("данного") + >>>L + ['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'предложения'] diff --git a/TEMA3/task.txt b/TEMA3/task.txt new file mode 100644 index 0000000..e69de29