ответвлено от main/python-labs
report:добавлен
Этот коммит содержится в:
271
TEMA2/report2.md
Обычный файл
271
TEMA2/report2.md
Обычный файл
@@ -0,0 +1,271 @@
|
||||
#Протокол по теме 2 <Лазарев Данил Вячеславович>
|
||||
1.Запуск оболочки IDLE
|
||||

|
||||
|
||||
2.Были рассмотрены операции присваивания значения объектам-переменным
|
||||
|
||||

|
||||
|
||||
dir()
|
||||
|
||||
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'f1', 'f2']
|
||||
|
||||
dir(f1)
|
||||
|
||||
['__abs__', '__add__', '__and__', '__bool__', '__ceil__', '__class__', '__delattr__', '__dir__', '__divmod__', '__doc__', '__eq__', '__float__', '__floor__', '__floordiv__', '__format\_\_', '\_\_ge\_\_', '\_\_getattribute\_\_', '\_\_getnewargs\_\_', '\_\_getstate\_\_', '\_\_gt\_\_', '\_\_hash\_\_', '\_\_index\_\_', '\_\_init\_\_', '\_\_init\_subclass\_\_', '\_\_int\_\_', '\_\_invert\_\_', '\_\_le\_\_', '\_\_lshift\_\_', '\_\_lt\_\_', '\_\_mod\_\_', '\_\_mul\_\_', '\_\_ne\_\_', '\_\_neg\_\_', '\_\_new\_\_', '\_\_or\_\_', '\_\_pos\_\_', '\_\_pow\_\_', '\_\_radd\_\_', '\_\_rand\_\_', '\_\_rdivmod\_\_', '\_\_reduce\_\_', '\_\_reduce\_ex\_\_', '\_\_repr\_\_', '\_\_rfloordiv\_\_', '\_\_rlshift\_\_', '\_\_rmod\_\_', '\_\_rmul\_\_', '\_\_ror\_\_', '\_\_round\_\_', '\_\_rpow\_\_', '\_\_rrshift\_\_', '\_\_rshift\_\_', '\_\_rsub\_\_', '\_\_rtruediv\_\_', '\_\_rxor\_\_', '\_\_setattr\_\_', '\_\_sizeof\_\_', '\_\_str\_\_', '\_\_sub\_\_', '\_\_subclasshook\_\_', '\_\_truediv\_\_', '\_\_trunc\_\_', '\_\_xor\_\_', 'as\_integer\_ratio', 'bit\_count', 'bit\_length', 'conjugate', 'denominator', 'from\_bytes', 'imag', 'is\_integer', 'numerator', 'real', 'to\_bytes']
|
||||
|
||||
2.1 Получим список существующих на данный момент объектов в среде IDLE.
|
||||
|
||||

|
||||
|
||||
2.2 Получим список атрибутов объектjd x1 & x2
|
||||
|
||||

|
||||
|
||||
2.3 Определим классвовую принадлежность объекта f2
|
||||
|
||||

|
||||
|
||||
2.4 Удалим имеющиеся объекты и далее проверим их наличие в памяти
|
||||
|
||||
del f1,f2
|
||||
|
||||
Исходя из полученного результата можно сделать вывод о том, что переменные были удалены.
|
||||
|
||||
3.Изучим правила именования объектов.
|
||||
Правила именования:
|
||||
- имена должны состоять из латинских букв, цифр и символов подчеркивания;
|
||||
|
||||
- имена должны начинаться с латинской буквы (иногда могут начинаться с символа подчеркивания, но это – особый вид переменных);
|
||||
|
||||
- имена не должны совпадать с ключевыми словами и встроенными идентификаторами языка Python;
|
||||
|
||||
большие и малые буквы в именах различаются (имена – чувствительные к регистру)!
|
||||
|
||||
3.1 Запишем ряд простых переменных
|
||||
|
||||

|
||||
|
||||
3.2 в последующих двух случаях мы видим нарушение праыил именование, из-за чего возникает ошибка
|
||||
|
||||
73sr = 3
|
||||
|
||||

|
||||

|
||||
|
||||
4. Выведем список ключевых слов с помощью инструкции. Также сохраним полученный список с помощью переменной.
|
||||
|
||||
|
||||

|
||||
|
||||
5.Выведем список встроенных идентификаторов.
|
||||
|
||||

|
||||
|
||||
5.1 Изучим ряд приведенных выше функций:
|
||||
а) Функция модуля:
|
||||

|
||||
|
||||
б) Функция длины(показывает длину строки, списка и др.)
|
||||

|
||||
|
||||
в) Функции максимума и минимума:
|
||||

|
||||
|
||||
г) Функция возведения в сетепень:
|
||||

|
||||
|
||||
д)Функция округления в большую сторону:
|
||||

|
||||
|
||||
е)Функция сортировки по критерию:
|
||||

|
||||
|
||||
ж)Функция суммирования:
|
||||

|
||||
|
||||
з)Функция zip(соединение):
|
||||

|
||||
6.Убедимся, что малые и большие буквы в именах объектов различаются:
|
||||
Присвоим сначение переменной G и выведем значения gg1 и Gg1:
|
||||

|
||||
|
||||
7.Изучим простые базовые типы объектов: логический (bool), целый (int), вещественный (float), комплексный (complex), строка символов (str).
|
||||
|
||||
7.1. Логический тип.
|
||||

|
||||
|
||||
7.2. Другие простые типы:
|
||||
Изучим их аналогично предыдущему примеру:
|
||||

|
||||
7.3. Строка символов
|
||||
Строки можно заключать в апострофы или двойные ковычки:
|
||||
Также можно использовать экранированные последовательности, начинающиеся со знака \, например, \\, \', \", \t, \n.
|
||||

|
||||
|
||||
7.3.1 Создадим и выведем строку по шаблону, предложенному в задании:
|
||||

|
||||
|
||||
7.3.2 Многострочные строки можно задавать в виде значения объекта с использованием тройных кавычек
|
||||

|
||||
|
||||
7.3.3 Можно обращаться к частям строки символов с использованием индексов символов по их порядку в строке. При этом надо учитывать, что нумерация символов начинается с 0.
|
||||
С четвертого элемента можем пронаблюдать операцию «разрезания» или «создания среза», создающую новый объект:
|
||||

|
||||
|
||||
7.4. Необходимо заметить, что строка является неизменяемым объектом:
|
||||

|
||||
|
||||
7.5 Однако имеем возможность переопределить строку:
|
||||

|
||||
Создадим объекты с разными срезами исходной строки ss1b
|
||||
|
||||

|
||||
|
||||
Самостоятельно придумали объекты и отобразили их типы и значения:
|
||||

|
||||
|
||||
8.Изучим свойства более сложных типов объектов:
|
||||
8.1.Списки:
|
||||
Введем примеры списков:
|
||||

|
||||
|
||||
Списки можно вводить на нескольких строках:
|
||||

|
||||
|
||||
Используем индексы для обращения к элементам:
|
||||

|
||||
или
|
||||

|
||||
в данном случае идет обращение к элементам списка начиная с -8 с шагом 2
|
||||
|
||||
Изменим список, присвоим 1му его элеиенту новое значение:
|
||||

|
||||
Измери дину списка spis1:
|
||||

|
||||
|
||||
Запросим помощь в описани функции append и воспользуемся полученными сведениями:
|
||||

|
||||
|
||||
Воспользуемся другим способом добавления элемента в список:
|
||||

|
||||
|
||||
Добавим в конец списка spis1 строку ss1b и отобразим список.
|
||||

|
||||
|
||||
Удалим элемент в списке:
|
||||

|
||||
spis1.pop(1)
|
||||
'Список'
|
||||
|
||||
Возможны и прочие методы работы над списками:
|
||||
а)insert
|
||||

|
||||
|
||||
б)remove
|
||||

|
||||
|
||||
в)extend
|
||||

|
||||
|
||||
г)clear
|
||||

|
||||
|
||||
д)sort
|
||||

|
||||
|
||||
е)reverse
|
||||

|
||||
|
||||
ж)copy
|
||||

|
||||
|
||||
з)count
|
||||

|
||||
|
||||
и)index
|
||||

|
||||
|
||||
Списки могут быть вложенными:
|
||||

|
||||
|
||||
Обращение к элементам вложенного списка и замена значения элемента такого списка:
|
||||

|
||||
|
||||
spis1 изменил своё значение в силу того, что над ним была произведена операция по замене переменной.
|
||||
|
||||
Придумаем и создадим объект-список , элементами которого будут объекты разных типов: число, строка, логическое значение, список.
|
||||

|
||||
|
||||
8.2 Кортежи
|
||||
|
||||
Создадим кортеж и переопределим его, так как изменению он не подлежит.
|
||||

|
||||
|
||||
Добавим ещё один элемент в картеж:
|
||||

|
||||
|
||||
Переопределим кортеж с удалением комплексного элемента с помощью срезов:
|
||||

|
||||
|
||||
Определим индекс заданного элемента и произведем подсчет числа вхождений заданного элемента в кортеж:
|
||||

|
||||
|
||||
Попробуем провести операцию замены элемента в котреже:
|
||||
kort1[2] = 90
|
||||
Traceback (most recent call last):
|
||||
File "<pyshell#2>", line 1, in <module>
|
||||
kort1[2] = 90
|
||||
TypeError: 'tuple' object does not support item assignment
|
||||
|
||||
Однако возникнет ошибка,в силу неизменности кортежа.
|
||||
|
||||
|
||||
Создадим объект-кортеж с элементами разных типов: число, строка, список, кортеж.
|
||||

|
||||
|
||||
8.3. Словари.
|
||||
|
||||
Создаим словарь и обратимся к его элементу:
|
||||

|
||||
|
||||
Пополним словарь:
|
||||

|
||||
|
||||
Произведем сортировку двумя способами по методам keys & values
|
||||

|
||||
|
||||
Создадим несколько словарей, чтобы показать, что элеементы словаря могут быть любого типа:
|
||||

|
||||
|
||||
Создадим более сложный словарь из списка с элементами-кортежами с использованием функции dict
|
||||

|
||||
|
||||
Создадим словарь из двух списков: один для ключей и другой – для значений, с помощью функций dict и zip:
|
||||

|
||||
|
||||
Самостоятельно составим объек объект-кортеж с 7 элементами и объект-список с 5 элементами и создадим из них словарь с помощью функций dict и zip.
|
||||

|
||||
5 - элеменов получится пять, ведь команда zip продолжала работать до тех пор пока не достигнет последнего элемента наименьшего из наборов.
|
||||
|
||||
Приведем пример словаря с описанием состава студентов, обучающихся на АВТИ:
|
||||

|
||||
8.4. Объект-множество.
|
||||
|
||||
Создадим множество:
|
||||

|
||||
|
||||
Определим число элементов множества:
|
||||

|
||||
|
||||
Определим наличие элемента во множестве:
|
||||

|
||||
|
||||
Добавим элемент во множество:
|
||||

|
||||
|
||||
Удалим элемент из множемтва:
|
||||

|
||||
|
||||
Самостоятельно составим объект-множество с элементами разных типов и попробуйте с ним выполнить разные операции.
|
||||
9. Сохраним созданный текстовый файл в своем рабочем каталоге. Закончим сеанс работы со средой.
|
||||
Ссылка в новой задаче
Block a user