diff --git a/TEMA2/figure1.png b/TEMA2/figure1.png new file mode 100644 index 0000000..93a77df Binary files /dev/null and b/TEMA2/figure1.png differ diff --git a/TEMA2/figure2.png b/TEMA2/figure2.png new file mode 100644 index 0000000..851355b Binary files /dev/null and b/TEMA2/figure2.png differ diff --git a/TEMA2/figure3.png b/TEMA2/figure3.png new file mode 100644 index 0000000..67ed481 Binary files /dev/null and b/TEMA2/figure3.png differ diff --git a/TEMA2/figure4.png b/TEMA2/figure4.png new file mode 100644 index 0000000..82085be Binary files /dev/null and b/TEMA2/figure4.png differ diff --git a/TEMA2/figure5.png b/TEMA2/figure5.png new file mode 100644 index 0000000..23274a5 Binary files /dev/null and b/TEMA2/figure5.png differ diff --git a/TEMA2/protocol.py b/TEMA2/protocol.py new file mode 100644 index 0000000..4af876c --- /dev/null +++ b/TEMA2/protocol.py @@ -0,0 +1,122 @@ +Протокол по теме 2 Мамакин Ярослав Романович +f1=16 +f2=3 +dir() +dir(f1) +type(f2) +del f1,f2 +gg1=1.6 +hh1='Строка' +kluch = keyword.kwlist +print(max([len('stroka'), abs(min([-4, -5]))])) +Gg1=45 +gg1,Gg1 +(1.6, 45) +bb1=True +type(bb1) +ii1=-1234567890 +type(ii1) +dv1=0b1101010 +type(dv1) +cc2=complex(3.67,-0.45) +type(cc2) +ss1a='Это - \'строка символов \', \n \t выводимая на двух строках' +print(ss1a) +Это - 'строка символов ', + выводимая на двух строках +ss1b = 'Меня зовут: \n Мамакин Я. Р.' +print(ss1b) +Меня зовут: + Мамакин Я. Р. +ss1='Это - строка символов' +print(ss1[17:3:-2]) +омсаот +print(ss1[-4:3:-2]) +омсаот +ss1[4]='=' +Traceback (most recent call last): + File "", line 1, in + ss1[4]='=' +TypeError: 'str' object does not support item assignment +ss1=ss1[:4]+'='+ss1[5:] +print(ss1) +Это = строка символов +print(ss1b[22:24]+ss1b[14:21]+ss1b[-1]) +Я.Мамакин. +spis1=[111,'Spisok',5-9j] +stup=[0,0,1,1,1,1,1,1,1] +spis1[1]='Список' +spis1 +[111, 'Список', (5-9j)] +len(spis1) +3 +spis1.append('New item') +spis1.append(ss1b) +spis1 +[111, 'Список', (5-9j), 'New item', 'Меня зовут: \n Мамакин Я. Р.'] +spis1.pop(1) +'Список' +stup.remove(1) +stup.reverse() +stup +[1, 1, 1, 1, 1, 1, 0, 0] +spis2=[spis1,[4,5,6,7]] +spis2[0][1]=78 +spis1 +[111, 78, 'New item', 'Меня зовут: \n Мамакин Я. Р.'] +spis3=[56, 'sem-vosem', False, [7, 8]] +stup[-8::2] +[1, 1, 1, 0] +kort1=(222,'Kortezh',77+8j) +kort1= kort1+(1,2) +kort2=kort1[:2]+kort1[3:] +kort1.index(2) +4 +kort1.count(222) +1 +kort1[2]=90 +Traceback (most recent call last): + File "", line 1, in + kort1[2]=90 +TypeError: 'tuple' object does not support item assignment +kort3=('7-8', 'pyat-shest', (7, 8)) +kort3 +('7-8', 'pyat-shest', (7, 8)) +dic1={'Saratov':145, 'Orel':56, 'Vologda':45} +dic1['Orel'] +56 +dic1['Pskov']=78 +dic1 +{'Saratov': 145, 'Orel': 56, 'Vologda': 45, 'Pskov': 78} +sorted(dic1.keys()) +['Orel', 'Pskov', 'Saratov', 'Vologda'] +sorted(dic1.values()) +[45, 56, 78, 145] +dic2={1:'mean',2:'standart deviation',3:'correlation'} +dic3={'statistics':dic2,'POAS':['base','elementary','programming']} +dic3['statistics'][2] +'standart deviation' +dic4=dict([(1,['A','B','C']),(2,[4,5]),('Q','Prim'),('Stroka',ss1b)]) +dic5=dict(zip(['A','B','C','Stroka'],[16,-3,9,ss1b])) +kortn=(7,8,9,10,11,12,13) +listn=['sem', 'vosem', 'devyat', 'desyat', 'odinnadsat'] +dic6=dict(zip(kortn,listn)) +dic6 +{7: 'sem', 8: 'vosem', 9: 'devyat', 10: 'desyat', 11: 'odinnadsat'} +mnoz1={'двигатель','датчик','линия связи','датчик','микропроцессор','двигатель'} +len(mnoz1) +4 +'датчик' in mnoz1 +True +mnoz1.add('реле') +mnoz1.remove('линия связи') +mno={7, '8', [5, 6]} +Traceback (most recent call last): + File "", line 1, in + mno={7, '8', [5, 6]} +TypeError: unhashable type: 'list' +mno={7, '8'} +mno.add(7) +mno +{'8', 7} + diff --git a/TEMA2/report.md b/TEMA2/report.md new file mode 100644 index 0000000..38f9763 --- /dev/null +++ b/TEMA2/report.md @@ -0,0 +1,193 @@ +# Отчет по теме 2 + +Мамакин Ярослав, А-02-23 + +## 1 Изучение простых объектов + +![Скриншот выполненных инструкций](figure1.png) + +После присваивания значений переменные отображаются в пространстве имен. +Тип - int +После удаления из оперативной памяти переменные не отображаются в пространстве имен. + +## 2 Правила именования объектов + +![Скриншот выполненных инструкций](figure2.png) + +Переменные с правильными именами получили свои значения, с неправильными - вызвали диагностическое сообщение. + +## 3 Вывод списка ключевых слов + +![Вывод списка](figure3.png) + +Сохранил список в переменную kluch: + +```py +kluch = keyword.kwlist +``` + +## 4 Cписок встроенных идентификаторов + +![Вывод списка](figure4.png) + +Изучил приведенные функции, пример: + +```py +print(max([len('stroka'), abs(min([-4, -5]))])) +``` + +Инструкция выводит длину строки, 6. + +## 5 Чувствительность к регистру + +![Демонстрация чувствительности к регистру](figure5.png) + +## 6 Базовые типы объектов + +Логический +```py +>>>bb1=True +>>>type(bb1) + +``` +Числовые +```py +>>>ii1=-1234567890 +>>>type(ii1) + +>>>dv1=0b1101010 +>>>type(dv1) + +>>>cc2=complex(3.67,-0.45) +>>>type(cc2) + +``` +Строка +```py +>>>ss1a='Это - \'строка символов \', \n \t выводимая на двух строках' +>>>print(ss1a) +Это - 'строка символов ', + выводимая на двух строках +>>>ss1b = 'Меня зовут: \n Мамакин Я. Р.' +>>>print(ss1b) +Меня зовут: + Мамакин Я. Р. +>>>ss1='Это - строка символов' +>>>print(ss1[17:3:-2]) +омсаот +>>>print(ss1[-4:3:-2]) +омсаот +# индексы -4 и 17 обращаются к одному элементу +>>>ss1[4]='=' +Traceback (most recent call last): + File "", line 1, in + ss1[4]='=' +TypeError: 'str' object does not support item assignment +>>>ss1=ss1[:4]+'='+ss1[5:] +>>>print(ss1) +Это = строка символов +>>>print(ss1b[22:24]+ss1b[14:21]+ss1b[-1]) +Я.Мамакин. +``` + +## 6 Сложные типы объектов + +Списки: + +```py +>>>spis1=[111,'Spisok',5-9j] +>>>stup=[0,0,1,1,1,1,1,1,1] +>>>stup[-8::2] +[1, 1, 1, 0] # 7, 5, 3 и 1 индексы +>>>spis1[1]='Список' +>>>spis1 +[111, 'Список', (5-9j)] +>>>len(spis1) +3 +>>>spis1.append('New item') +>>>spis1.append(ss1b) +>>>spis1 +[111, 'Список', (5-9j), 'New item', 'Меня зовут: \n Мамакин Я. Р.'] +>>>spis1.pop(1) +'Список' +>>>stup.remove(1) +>>>stup.reverse() +>>>stup +[1, 1, 1, 1, 1, 1, 0, 0] +>>>spis2=[spis1,[4,5,6,7]] +>>>spis2[0][1]=78 +>>>spis1 +[111, 78, 'New item', 'Меня зовут: \n Мамакин Я. Р.'] +>>>spis3=[56, 'sem-vosem', False, [7, 8]] +``` + +Кортежи: + +```py +>>>kort1=(222,'Kortezh',77+8j) +>>>kort1= kort1+(1,2) +>>>kort2=kort1[:2]+kort1[3:] +>>>kort1.index(2) +4 +>>>kort1.count(222) +1 +>>>kort1[2]=90 +Traceback (most recent call last): + File "", line 1, in + kort1[2]=90 +TypeError: 'tuple' object does not support item assignment +>>>kort3=('7-8', 'pyat-shest', (7, 8)) +>>>kort3 +('7-8', 'pyat-shest', (7, 8)) +``` + +Словари: + +```py +dic1={'Saratov':145, 'Orel':56, 'Vologda':45} +dic1['Orel'] +56 +dic1['Pskov']=78 +dic1 +{'Saratov': 145, 'Orel': 56, 'Vologda': 45, 'Pskov': 78} +sorted(dic1.keys()) +['Orel', 'Pskov', 'Saratov', 'Vologda'] +sorted(dic1.values()) +[45, 56, 78, 145] +dic2={1:'mean',2:'standart deviation',3:'correlation'} +dic3={'statistics':dic2,'POAS':['base','elementary','programming']} +dic3['statistics'][2] +'standart deviation' +dic4=dict([(1,['A','B','C']),(2,[4,5]),('Q','Prim'),('Stroka',ss1b)]) +dic5=dict(zip(['A','B','C','Stroka'],[16,-3,9,ss1b])) +kortn=(7,8,9,10,11,12,13) +listn=['sem', 'vosem', 'devyat', 'desyat', 'odinnadsat'] +dic6=dict(zip(kortn,listn)) +dic6 +{7: 'sem', 8: 'vosem', 9: 'devyat', 10: 'desyat', 11: 'odinnadsat'} +``` +Функция zip остановилась на более коротком из итерируемых объектов + +Множества: + +```py +mnoz1={'двигатель','датчик','линия связи','датчик','микропроцессор','двигатель'} +len(mnoz1) +4 +'датчик' in mnoz1 +True +mnoz1.add('реле') +mnoz1.remove('линия связи') +mno={7, '8', [5, 6]} +Traceback (most recent call last): + File "", line 1, in + mno={7, '8', [5, 6]} +TypeError: unhashable type: 'list' +mno={7, '8'} +mno.add(7) +mno +{'8', 7} +``` +Список не может быть элементом множества + + diff --git a/TEMA2/task.md b/TEMA2/task.md new file mode 100644 index 0000000..65fd967 --- /dev/null +++ b/TEMA2/task.md @@ -0,0 +1,33 @@ +# Общее контрольное задание по теме 2 + +Мамакин Ярослав, А-02-23 + +## Задание + +Реализовать, записать в текстовый файл и проанализировать результаты последовательности ин-струкций, выполняющих следующие действия: +• Создать переменную с именем familia и со значением - символьной строкой – своей фами-лией в латинской транскрипции. +• Создать переменную со значением, совпадающим с первой буквой из familia. +• Создать переменную с именем sp_kw со значением – списком всей ключевых слов языка Python. +• Удалите из списка sp_kw значение 'nonlocal'. Выводом списка в командном окне IDLE убедитесь, что это значение удалено из списка. +• Создайте кортеж kort_nam с именами: вашим и еще 3-х студентов из вашей группы. Напи-шите инструкцию, позволяющую убедиться, что тип переменной – это tuple. +• Напишите инструкцию, добавляющую в kort_nam имена еще двух студентов. +• Напишите инструкцию, позволяющую определить, сколько раз в кортеже присутствуют студенты с именем «Дима». +• Создайте словарь dict_bas, в котором ключами являются русские названия типов перемен-ных, использованных в предыдущих операторах, а значениями – ранее созданные перемен-ные, соответствующие этим типам. + +## Решение + +```py +>>>familia = 'Мамакин' +>>>bukva = familia[0] +>>>sp_kw = keyword.kwlist +>>>sp_kw.remove('nonlocal') +>>>sp_kw +['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'] +>>>kort_nam = ('Ярослав', 'Дима', 'Семён') +>>>type(kort_nam) + +>>>kort_nam = kort_nam + ('Настя', 'Денис') +>>>kort_nam.count('Дима') +1 +>>>dict_bas={'Строка':familia, 'Список':sp_kw, 'Кортеж':kort_nam} +``` \ No newline at end of file