форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
353 строки
12 KiB
Markdown
353 строки
12 KiB
Markdown
#Протокол по теме 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.Сохраним созданный текстовый файл в своем рабочем каталоге. Закончим сеанс работы со средой. |