ответвлено от main/python-labs
585 строки
20 KiB
Markdown
585 строки
20 KiB
Markdown
### Отчёт по теме 3
|
||
Лазарев Данил, А-01-23
|
||
### 1.Запуск оболочки IDLE и установка рабочего каталога.
|
||
```
|
||
import os
|
||
os.chdir('C:\\Users\\Dannyan\\OneDrive\\Рабочий стол\\python-labs\\TEMA3\\')
|
||
```
|
||
### 2.Преобразование простых базовых типов объектов.
|
||
## 2.1. Преобразование в логический тип
|
||
```
|
||
logiz1 = bool(56)
|
||
logiz1
|
||
True
|
||
logiz2 = bool(0)
|
||
logiz2
|
||
False
|
||
logiz3 = bool("Beta")
|
||
logiz3
|
||
True
|
||
logiz4 = bool("")
|
||
logiz4
|
||
False
|
||
```
|
||
### 2.2. Преобразование объектов различных типов объектов в объект типа int/float
|
||
```
|
||
tt1 = int(198.6)
|
||
tt1
|
||
198
|
||
tt2 = int("-76")
|
||
tt2
|
||
-76
|
||
tt3 = int("B",16)
|
||
tt3
|
||
11
|
||
tt4 = int("71",8)
|
||
tt4
|
||
57
|
||
tt5 = int("98.76")
|
||
Traceback (most recent call last):
|
||
File "<pyshell#18>", line 1, in <module>
|
||
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
|
||
```
|
||
В данном случае операция int("98.76") не выполнилась, так как при попытке преобразования заданного числа типа 'строка' предполагается целочисленность выражения, в данном же случае присутствует аргумент с плавающей точкой.
|
||
### 2.3. Преобразование десятичных чисел в другие системы счисления(двоичную,восьмеричную, и шестнадцатеричную), а также обратные преобразования
|
||
```
|
||
hh = 123
|
||
dv1 = bin(hh)
|
||
dv1
|
||
'0b1111011'
|
||
vos1 = oct(hh)
|
||
vos1
|
||
'0o173'
|
||
dhs1 = hex(hh)
|
||
shs1 = hex(hh)
|
||
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)
|
||
Traceback (most recent call last):
|
||
File "<pyshell#2>", line 1, in <module>
|
||
strk2 = str(logiz3)
|
||
NameError: name 'logiz3' is not defined
|
||
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. Преобразование элементов объекта в список с помощью функции list
|
||
```
|
||
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']
|
||
```
|
||
### 3.3. Преобразование элементов объектов в кортеж с помощью функции tuple
|
||
```
|
||
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 "<pyshell#25>", line 1, in <module>
|
||
strk5
|
||
NameError: name 'strk5' is not defined. Did you mean: 'strk1'?
|
||
kort8
|
||
Traceback (most recent call last):
|
||
File "<pyshell#26>", line 1, in <module>
|
||
kort8
|
||
NameError: name 'kort8' is not defined. Did you mean: 'kort7'?
|
||
```
|
||
Создадим строку в соответствии с заданием. Проведем над ней изложенные операции:
|
||
```
|
||
f = "LazarevDV"
|
||
m = list(f)
|
||
m
|
||
['L', 'a', 'z', 'a', 'r', 'e', 'v', 'D', 'V']
|
||
v = tuple(m)
|
||
v
|
||
('L', 'a', 'z', 'a', 'r', 'e', 'v', 'D', 'V')
|
||
w = str(f)
|
||
w
|
||
"('L', 'a', 'z', 'a', 'r', 'e', 'v', 'D', 'V')"
|
||
```
|
||
### 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/4
|
||
a
|
||
44.5
|
||
type(a)
|
||
<class 'float'>
|
||
```
|
||
Результатом всегда будет вещественное число
|
||
### 4.4. Изучение операции деления с округлением вниз
|
||
```
|
||
b=178//45
|
||
b
|
||
3
|
||
type(b)
|
||
<class 'int'>
|
||
c=-24.6//12.1
|
||
c
|
||
-3.0
|
||
type(c)
|
||
<class 'float'>
|
||
d = 27.1// 4
|
||
d
|
||
6.0
|
||
type(d)
|
||
<class 'float'>
|
||
p = -7 // 32
|
||
p
|
||
-1
|
||
type(p)
|
||
<class 'int'>
|
||
```
|
||
### 4.5. Изучение операции получения остатка от деления
|
||
```
|
||
148%33
|
||
16
|
||
12.6%3.8
|
||
1.2000000000000002
|
||
21.3%3
|
||
0.3000000000000007
|
||
```
|
||
### 4.6. Изучение операции возведения в степень
|
||
Возведение в степень целых и вещественных чисел
|
||
```
|
||
14**3
|
||
2744
|
||
e=2.7**3.6
|
||
e
|
||
35.719843790663525
|
||
32.1** 2
|
||
1030.41
|
||
2**3.11
|
||
8.633825892035416
|
||
```
|
||
Рассмотрим приведенные выше операции над комплексными числами
|
||
```
|
||
k1 = 2+2j
|
||
k2 = 1 +9j
|
||
k1+k2
|
||
(3+11j)
|
||
k1 -k2
|
||
(1-7j)
|
||
k1*k2
|
||
(-16+20j)
|
||
k1 / k2
|
||
(0.24390243902439027-0.1951219512195122j)
|
||
k1 // k2
|
||
Traceback (most recent call last):
|
||
File "<pyshell#21>", line 1, in <module>
|
||
k1 // k2
|
||
TypeError: unsupported operand type(s) for //: 'complex' and 'complex'
|
||
k1//2
|
||
Traceback (most recent call last):
|
||
File "<pyshell#22>", line 1, in <module>
|
||
k1//2
|
||
TypeError: unsupported operand type(s) for //: 'complex' and 'int'
|
||
k1%k2
|
||
Traceback (most recent call last):
|
||
File "<pyshell#23>", line 1, in <module>
|
||
k1%k2
|
||
TypeError: unsupported operand type(s) for %: 'complex' and 'complex'
|
||
k2 % 2
|
||
Traceback (most recent call last):
|
||
File "<pyshell#24>", line 1, in <module>
|
||
k2 % 2
|
||
TypeError: unsupported operand type(s) for %: 'complex' and 'int'
|
||
k1**4
|
||
(-64+0j)
|
||
k1**k2
|
||
(-0.001813524614321925-0.0015845209011050843j)
|
||
```
|
||
Заметим, что из всех операций не выполняются операции деления с остатком и округления вниз
|
||
### 5.Операции с двоичными представлениями целых чисел
|
||
### 5.1. Двоичная инверсия
|
||
```
|
||
dv1=9
|
||
dv2=~dv1
|
||
dv2
|
||
-10
|
||
```
|
||
### 5.2. Двоичное «И» (&) – побитовое совпадение
|
||
```
|
||
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
|
||
```
|
||
### 5.5. Сдвиг двоичного представления на заданное число разрядов влево (<<) или вправо (>>) с дополнением нулями, соответственно справа или слева
|
||
```
|
||
h=14
|
||
h
|
||
14
|
||
bin(h)
|
||
'0b1110'
|
||
g=h<<2
|
||
g
|
||
56
|
||
bin(g)
|
||
'0b111000'
|
||
g1 = h>>1
|
||
bin(g1)
|
||
'0b111'
|
||
g1
|
||
7
|
||
g2 = h>>2
|
||
g2
|
||
3
|
||
bin(g2)
|
||
'0b11'
|
||
l = 832
|
||
l << 2
|
||
3328
|
||
bin(3328)
|
||
'0b110100000000'
|
||
l
|
||
832
|
||
bin(l)
|
||
'0b1101000000'
|
||
bin(l<<7)
|
||
'0b11010000000000000'
|
||
bin(l>>7)
|
||
'0b110'
|
||
```
|
||
### 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
|
||
'ля-ля-ля-ля-ля-'
|
||
['ку','-']*3
|
||
['ку', '-', 'ку', '-', 'ку', '-']
|
||
('кис','-')*4
|
||
('кис', '-', 'кис', '-', 'кис', '-', 'кис', '-')
|
||
signal1=[0]*3+[1]*99
|
||
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,)*3+(1,)*5+(0,)*7
|
||
signal2
|
||
(0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0)
|
||
```
|
||
### 6.3. Проверка наличия заданного элемента в последовательности (in)
|
||
```
|
||
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
|
||
-7
|
||
zz-=3
|
||
zz
|
||
-10
|
||
stroka='Система'
|
||
stroka+=' регулирования'
|
||
stroka
|
||
'Система регулирования'
|
||
```
|
||
### 7.3. Умножение текущего значения переменной на заданную величину (*=) или деление (/=)
|
||
```
|
||
zz/=2
|
||
zz
|
||
-5.0
|
||
zz*=5
|
||
zz
|
||
-25.0
|
||
stroka *= 3
|
||
stroka
|
||
'Система регулированияСистема регулированияСистема регулирования'
|
||
```
|
||
### 7.4. Операции деления с округлением вниз (//=), получения остатка от деления (%=) и возведения в степень(**=)
|
||
```
|
||
p=27.3
|
||
p //= 2
|
||
p
|
||
13.0
|
||
p %= 3
|
||
p
|
||
1.0
|
||
p +=2
|
||
p**=2
|
||
p
|
||
9.0
|
||
```
|
||
### 7.5. Множественное присваивание
|
||
```
|
||
w=v=10
|
||
w,v
|
||
(10, 10)
|
||
n1,n2,n3=(11,-3,'all')
|
||
n1,n2,n3
|
||
(11, -3, 'all')
|
||
|
||
b1,b2,b3 = {"A":1,"B":2,"C":9}
|
||
b1,b2,b3
|
||
('A', 'B', 'C')
|
||
|
||
b1,b2,b3 = {"A","B","C"}
|
||
b1,b2,b3
|
||
('A', 'B', 'C')
|
||
|
||
b1,b2,b3= '123'
|
||
b1,b2,b3
|
||
('1', '2', '3')
|
||
```
|
||
### 8. Изучение логических операций
|
||
### 8.1. Операции сравнения
|
||
```
|
||
w=v=10
|
||
w==v
|
||
True
|
||
w != v
|
||
False
|
||
w >v
|
||
False
|
||
w <= v
|
||
True
|
||
w >= v
|
||
True
|
||
```
|
||
### 8.2. Проверка наличия заданного элемента в последовательности или во множестве, а также проверка наличия ключа в словаре (in)
|
||
```
|
||
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. Создание больших логических выражений с использованием соединительных слов: логическое «И» (and), логическое «ИЛИ» (or), логическое «НЕ» (not)
|
||
```
|
||
a=17
|
||
b=-6
|
||
(a>=b) and ('book' in mnoz1) and not ('Pskov' in dic1)
|
||
True
|
||
(a<b) or ('book' in mnoz1)
|
||
True
|
||
(a != b) and ( a>b) and (a == 17)
|
||
True
|
||
```
|
||
### 8.4. Проверка ссылок переменных на один и тот же объект (is)
|
||
```
|
||
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("с") #Возвращает кортеж с результатами поиска «с» справа
|
||
('Микропроцессорная си', 'с', 'тема управления')
|
||
```
|
||
Метод format
|
||
```
|
||
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
|
||
'Момент времени {num}, значение = {znch}'
|
||
strk3.format(znch=89.7,num=2)
|
||
'Момент времени 2, значение = 89.7'
|
||
```
|
||
### 9.2. Методы работы со списками
|
||
```
|
||
spisok = [1, 'book', 32.2, [21,32], 'sss']
|
||
dir(spisok)
|
||
['__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']
|
||
spisok
|
||
[1, 'book', 32.2, [21, 32], 'sss']
|
||
spisok.pop(2) # Удаление элемента из списка
|
||
32.2
|
||
spisok
|
||
[1, 'book', [21, 32], 'sss']
|
||
spisok.append('j') # добавление элемента j в конец списка
|
||
spisok
|
||
[1, 'book', [21, 32], 'sss', 'j']
|
||
spisok.insert(2,'i') #Добавление в список элемента i с индексом 2
|
||
spisok
|
||
[1, 'book', 'i', [21, 32], 'sss', 'c']
|
||
spisok.count('i') #Подсчёт числа элементов i, входящих в список
|
||
1
|
||
```
|
||
### 9.3. Методы работы с кортежами
|
||
```
|
||
kort1 = (1,3,'a',[2,1])
|
||
dir(kort1)
|
||
['__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']
|
||
kort1.index('a') #Нахождение индекса элемента в кортеже
|
||
2
|
||
kort1.count(1) #Подсчёт числа элементов 1, входящих в кортеж
|
||
1
|
||
```
|
||
### 9.4. Методы для работы со словарями
|
||
```
|
||
dd = {'A':19,'B':20,'C':21}
|
||
dir(dd)
|
||
['__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']
|
||
dd.keys() #Отображение ключей словаря
|
||
dict_keys(['A', 'B', 'C'])
|
||
dd.values() #Отображение значений словаря
|
||
dict_values([19, 20, 21])
|
||
dd.pop('A') #Удаление элемента словаря по ключу
|
||
19
|
||
dd
|
||
{'B': 20, 'C': 21}
|
||
```
|
||
### 9.5. Методы работы с множествами
|
||
```
|
||
mnoz = {"A","B","C",2,1}
|
||
dir(mnoz)
|
||
['__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']
|
||
mnoz.remove("A")
|
||
mnoz
|
||
{1, 2, 'C', 'B'}
|
||
```
|
||
### Завершение работы в среде IDLE |