report: дополнен полный отчёт

main
EfremovSI 2 месяцев назад
Родитель e2ff24dcb8
Сommit d8500b559d

@ -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)
<class 'list'>
>>> 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)
<class 'tuple'>
>>> 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)
<class 'dict'>
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)
<class 'set'>
>>> 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.

Загрузка…
Отмена
Сохранить