From d8500b559deb73051042b48d9def4de9ba91df2e Mon Sep 17 00:00:00 2001 From: EfremovSI Date: Mon, 15 Sep 2025 22:37:53 +0300 Subject: [PATCH] =?UTF-8?q?report:=20=D0=B4=D0=BE=D0=BF=D0=BE=D0=BB=D0=BD?= =?UTF-8?q?=D0=B5=D0=BD=20=D0=BF=D0=BE=D0=BB=D0=BD=D1=8B=D0=B9=20=D0=BE?= =?UTF-8?q?=D1=82=D1=87=D1=91=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA3/report.md | 221 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 220 insertions(+), 1 deletion(-) diff --git a/TEMA3/report.md b/TEMA3/report.md index 4bc4bb9..4e1d584 100644 --- a/TEMA3/report.md +++ b/TEMA3/report.md @@ -408,7 +408,7 @@ False >>> zzz *=12 #повторение >>> zzz 144 - +``` ### 7.4. Деление с округлением вниз, остаток от деления и возведение в степень. ```py @@ -446,5 +446,224 @@ False ## 8. Логические операции. +### 8.1. Операции сравнения: + +```py +>>> w==v #равенство +True + +>>> w!=v #неравенство +False + +>>> 9<10 #меньше +True + +>>> 9>10 #больше +False + +>>> w<=v #меньше или равно +True + +>>> w>=v #больше или равно +True +``` + +### 8.2. Проверка наличия + +```py +>>> 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. Большие лог. выражения + +```py +>>> a=17 +>>> b=-6 +>>> (a>=b) and ('book' in mnoz1) and not ('Pskov' in dic1) +True + +not (a==b) and not ('Moscow' in dic1) and not ('iPhone' in mnoz1) +False + +not (a==b) and not ('Moscow' in dic1) and not ('XIAOMI' in mnoz1) +True +``` + +### 8.4. Ссылки переменных. + +```py +>>> w=v=10 +>>> w is v +True +>>> v is w +True +>>> w1=['A','B'];v1=['A','B'] +>>> w1, v1 +(['A', 'B'], ['A', 'B']) +>>> w1 is v1 +False +>>> v1 is w1 +False +``` +А всё потому что оператор is проверяет, являются ли переменные одним и тем же объектом в памяти, а не то, одинаковые ли у них значения. Пример ниже: + +```py +>>> v1 = w1 +>>> v1 is w1 +True +>>> w1=['A','B'];v1=['A','B'] +>>> w1==v1 +True +>>> 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. Методы в строках. + +```py +>>> stroka.find('пр') +5 +>>> stroka.count("с") +4 +>>> stroka.replace(' у',' автоматического у') +'Микропроцессорная система автоматического управления' +>>> spis22=stroka.split(' ') +>>> spis22 +['Микропроцессорная', 'система', 'управления'] +>>> stroka.upper() +'МИКРОПРОЦЕССОРНАЯ СИСТЕМА УПРАВЛЕНИЯ' +>>> stroka3=" ".join(spis22) +>>> stroka3.partition("с") +('Микропроце', 'с', 'сорная система управления') +stroka3.partition("с") +('Микропроце', 'с', 'сорная система управления') +stroka3.rpartition("с") +('Микропроцессорная си', 'с', 'тема управления') +``` + +#### Метод format. + +```py +>>> 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. Методы в списках + +```py +>>> spsk = ['kfc','mcdonalds','burgerking','teremok',20] +>>> type(spsk) + +>>> 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) #удаление элемента из списка +'burgerking' +>>> spsk +['kfc', 'mcdonalds', 'teremok', 20] +>>> spsk.append('c') #добавление нового элемента в конец списка +>>> spsk +['kfc', 'mcdonalds', 'teremok', 20, 'c'] +>>> spsk.insert(2,'a') #добавление элемента на место под определенным индексом +>>> spsk +['kfc', 'mcdonalds', 'a', 'teremok', 20, 'c'] +>>> spsk.count('a') #пересчёт элементов 'a' в списке +1 +``` +### 9.3. Методы кортежа. + +```py + +>>> kortezh = (1, 2, 3, 4) +>>> type(kortezh) + +>>> dir(kortezh) +['__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'] + +>>> kortezh.count(1) #подсчёт элемента '1' +1 +>>> kortezh.index(4) #выводит индекс заданного элемента +3 +``` + +### 9.4 Методы словаря и кортежа. + +#### Словарь. +```py +>>> slovar = {'A':1, 'B':2, 'C':3} +>>> type(slovar) + +d +>>> dir(slovar) +['__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'] + + +>>> slovar.pop('A') #удаление элемента +1 +>>> slovar +{'B': 2, 'C': 3} +>>> slovar.items() +dict_items([('B', 2), ('C', 3)]) + +>>> slovar.keys() +dict_keys(['B', 'C']) +>>> slovar.values() +dict_values([2, 3]) + +#### Множество. + +```py +>>> mno = {1, 2, 3, 4} +>>> type(mno) + +>>> dir(mno) +['__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'] + + +>>> mno.add(5) #добавление +>>> mno +{1, 2, 3, 4, 5} + +>>> mno.remove(5) #удаление +>>> mno +{1, 2, 3, 4} + +>>> mno.clear() #очищение +>>> mno +set() + +``` +## 10. Конец сеанса работы с IDLE.