Каждый из этих режимов может иметь текстовый и двоичный варианты. Во втором случае к буквенному обозначению добавляется буква «b». Эти режимы можно комбинировать.
Модули. Общие сведения. Создание модуля. Инструкции import, from
При написании больших программ или при увеличении размера программы возрастает необходимость в соответствующем (правильном) разделении программы на структурно независимые части. Назначение этой структуры заключается в следующем:
- Способствовать созданию или развитию программы,
- улучшить обслуживание программы
- уменьшить количество логических ошибок и тем самым повысить качество разработки программ.
Для структурирования в Python используются так называемые модули. Модуль — это программная единица, которая содержит программный код и данные и используется для организации взаимодействия между структурно независимыми (структурно уникальными) частями программы. Каждый модуль соответствует соответствующему программному файлу. В отличие от этого, каждый файл является отдельным модулем.
Каждый отдельный модуль может быть импортирован (связан, использован) другим модулем. Модуль также может импортировать (использовать) другой модуль.
Элементы, реализованные в модуле, называются атрибутами. Компоненты — это имена переменных, связанных с функциями, объектами, классами и т.д.
Существует также понятие импорта модуля. Импорт модуля — это связывание модуля с помощью специальных инструкций для доступа к программным инструментам (утилитам) этого модуля. После импорта становятся доступны функции модуля.
2 Необходимость использования модулей
Использование модулей позволяет структурировать программные компоненты в самодостаточные пакеты, называемые пространствами имен. Как и в любом пространстве имен, когда модуль импортируется, все имена являются атрибутами импортированного объекта модуля. Эти имена описываются в глобальном пространстве импортируемого модуля.
Использование модулей важно по следующим причинам:
- Повторное использование кода. Каждый модуль представлен в виде файла. Это позволяет привязать код к различным (нескольким) разделам клиента. В модуле формируется набор имен или, другими словами, набор атрибутов данного модуля,
- распределение пространств имен. Модули — это естественный способ группировки элементов программной системы. При использовании модулей имена изолированы, что позволяет избежать конфликтов и путаницы в названиях. Имена, используемые в модулях, группируются по определенным критериям. Объекты и программный код подразумеваются в модулях,
- Совместное использование компонентов программного обеспечения и данных. Это означает, что один и тот же модуль может быть использован в различных элементах программной системы. Существует только один модуль — есть много компонентов клиентского программного обеспечения.
3. организация приложений Python. Основной файл программы в модульной структуре. Маленькие файлы
Как правило, каждая современная программа Python структурирована таким образом, что использует или состоит из нескольких файлов, также называемых модулями. Если приложение создано таким образом, что содержит несколько модулей, то у этой программы есть главный файл. Этот файл выполняет всю программу. Другие модули всей программы обычно содержатся в этом файле. Главный файл определяет ход выполнения главного потока. В свою очередь, дополнительные модули могут использовать возможности других модулей для выполнения.
Если основной файл не должен импортироваться в другие файлы, его расширение может быть любым (не обязательно расширение *.py). Важно, чтобы все остальные модули, связанные с этим файлом, имели это расширение. В любом случае, рекомендуется указывать расширение основного файла как *.py, так как это расширение делает более понятным назначение файла и его можно впоследствии импортировать в другие файлы.
Каждый из этих режимов может иметь текстовый и двоичный варианты. Во втором случае к буквенному обозначению добавляется буква «b». Эти режимы можно комбинировать.
1.1.1. Свойства файла¶
Файл может иметь различные свойства в зависимости от файловой системы.
В большинстве файловых систем файл имеет следующие свойства:
Имя и расширение (обычно просто называют имя вместе): например, my_programme.py ,
Дата/время (можно указать указатель создания, модификации и последнего доступа),
Атрибуты (скрытые, системные и т.д.) и права доступа.
На имя файла накладываются определенные ограничения, зависящие от файла и операционной системы, особенно в отношении допустимых символов и длины имени. Расширение указывается после имени с точкой и предназначено в основном для Windows, где оно указывает на приложение, с помощью которого выполняется файл.
В Windows расширение файла по умолчанию скрыто от пользователя. Часто бывает удобно «видеть» расширение, которое можно активировать в настройках: https://support.microsoft.com/ru-ru/kb/865219.
1.1.2. Путь к файлу: абсолютный и относительный¶
Чтобы найти файл в файловой системе, необходимо знать путь к нему — узлы дерева файловой системы, которые нужно пройти, чтобы добраться до него.
В операционных системах UNIX путь разделяется символом /, в Windows — \: эти символы используются для разделения имен каталогов, составляющих путь к файлу.
Путь может быть:
абсолютный (полный): указывает одно и то же место в файловой системе, независимо от текущего рабочего каталога или других условий,
relative: путь относительно текущего рабочего каталога пользователя или активных приложений.
Примеры путей для операционных систем Windows и UNIX:
относительно: example1.py, если текущий каталог C:\user\python\,
относительный: python\example1.py, если текущий каталог C:\user\,
relative: example1.py, если текущий каталог — /home/user/python/,
relative: user/python/example1.py, если текущий каталог — /home/.
Узнайте больше о путях в различных операционных системах.
1.1.3. Операции с файлами¶
Все операции с файлами можно разделить на 2 группы:
Файловые операции: Открывать, закрывать файл, писать, читать, перемещаться в файле и т.д.
Операции, выполняемые без открытия файла: Манипуляции с файлом как элементом файловой системы — переименование, копирование, извлечение атрибутов и т.д.
Когда файл открыт, он обычно фиксируется:
Затем операционная система возвращает специальный дескриптор файла (идентификатор), который однозначно указывает, с каким файлом следует работать дальше. После открытия доступен индекс файла — число, указывающее на позицию относительно начала файла.
В операционных системах UNIX путь разделяется символом /, в Windows — \: эти символы используются для разделения имен каталогов, составляющих путь к файлу.
Математические операторы
Как работать с числами и какие математические операторы применимы к строкам?
Python содержит все основные математические операции для работы с целыми числами и дробями:
- Добавить +
- удалить
- Умножение
- расширение **
- Подразделение /
Кроме обычного деления в Python, есть два других, основанных на принципе деления на остаток — когда вместо дроби дается остаток. Например: 20 / 6 = 3 (остаток 2) — дробная часть деления равна 3, остаток от деления равен 2.
То есть, у нас:
- Целочисленное деление //
- остаток дивизии %.
Для каждой из этих операций мы получаем соответствующее значение.
Переменная может записывать собственные изменения в себя; чтобы сделать запись более удобной, мы можем использовать оператор сокращения, где перед символом «=» и после него пишем значение, на которое переменная должна быть изменена.
a = a + b | a += b |
a = a — b | a -= b |
a = a * b | a *= b |
a = a ** b | a **= b |
a = a / b | a /= b |
a = a // b | a //= b |
a = a % b | a %= b |
На что будут направлены мероприятия программы? То же самое, что и в формальной математике:
- Экспонирование,
- умножение/деление,
- сложение/вычитание.
Скобки также можно использовать для изменения порядка операций.
Сложение и умножение также применяются к строкам:
- Можно добавить несколько строк, а затем «объединить» их в одну длинную строку,
- Также возможно умножение строки на целое число — тогда создается новая строка, состоящая из повторяющейся исходной строки.
В этот момент важно помнить, что строка, состоящая только из цифр, остается строкой, и применение этих операторов к ней применяется как к строке, а не как к числу:
Фактчек
- Для выполнения программ, написанных на языке Python, вам нужен интерпретатор этого языка. Чтобы написать программу на Python, вам нужен интерпретатор Python.
- Функция print() используется для вывода данных на экран, функция input() — для ввода данных с клавиатуры.
- Переменные, которым могут быть присвоены различные типы данных, используются для долгосрочного манипулирования данными. Перевод между типами данных возможен, для этого используются их метки.
- Python поддерживает все основные математические операторы для работы с числами.
Задача 1. Файл с расширением .py является…
- Ссылка на сайт на русском языке
- Файл программы Python
- Установочный файл интерпретатора Python
- Нет такого файла
Задание 2. Выберите правильное имя переменной:
- 123Номер
- Исправлено.
- 12300000000
- Счетные строки
Задача 3. Результатом выражения «23» * 2 будет:
Задача 4. Результатом записи int(2.88) ** 4 будет:
Ответы. 3. — 2; 4. — 3.
Если вы работаете под Windows, то в принципе можно использовать и Блокнот, который уже установлен в этой операционной системе (MS Word использовать не следует). Вам нужно только написать код в блокноте, сохранить файл и изменить расширение с .txt на .py.
Установка библиотек
Как уже упоминалось, по умолчанию установлены только основные функции www.python.org. Если вы хотите использовать, например, библиотеку Numpy или Matplotlib, вам придется установить их отдельно. Для этого мы можем использовать программу pip.
Программа pip
Pip — это программа, которая помогает устанавливать (обновлять и удалять) дополнительные библиотеки на вашем компьютере. В основном он связывается с репозиторием Python Package Index или PyPI (pypi.org⧉) и загружает запрашиваемые файлы.
Все действия выполняются через командную строку.
Если вы установили Python в соответствии с приведенными выше инструкциями, pip уже присутствует на вашем компьютере. Вы можете проверить его с помощью команды pip —version.
В качестве альтернативы мы можем вывести список всех установленных на компьютере библиотек с помощью команды pip list.
Установка библиотеки Numpy через pip install
Давайте установим библиотеку numpy. Для этого введите pip install numpy в командной строке.
Вы можете проверить установку отдельного пакета с помощью pip show numpy.
Использование установленной библиотеки
Теперь мы можем использовать установленную библиотеку numpy через командную строку. Сначала мы подключаемся к py, затем вводим следующие команды построчно (каждый раз с помощью enter):
Как мы видим, Python успешно создал таблицу Numpy в результате выполнения этого кода.
Обновление и удаление библиотек
Создатели библиотек регулярно выпускают обновления, которые вы можете загрузить на свой компьютер. Используйте следующую команду: pip install —upgrade numpy .
Чтобы удалить пакет, введите команду pip uninstall numpy .
Во время процесса удаления необходимо нажать Y + Enter для подтверждения операции. Другие библиотеки устанавливаются, обновляются и удаляются таким же образом.
Давайте поговорим о пакетах. Предположим, вы создали несколько полезных функций и классов, и хранить их в модуле не очень практично. Сейчас самое время создать свой собственный пакет.
Примечания. Некоторые пакеты (например, Numpy или Pandas) называются библиотеками. Однако пакет и библиотека — это технически одно и то же.
Создание собственного пакета
Для практики давайте создадим простой пакет Python и поместим его в репозиторий TestPyPI. Это своего рода «песочница», где вы можете научиться создавать пакеты, прежде чем загружать их в «большой» репозиторий PyPI.
Обратите внимание, что PyPI и TestPyPI — это разные сайты, для которых требуются разные учетные записи.
Я должен добавить, что этот раздел в значительной степени основан на примере, приведенном в документации Python⧉.
Шаг 1. Создание учетной записи
Сначала зарегистрируйтесь на сайте https://test.pypi.org/⧉.
Шаг 2. Создание файлов
Теперь создайте пакет example_package (по сути, группу папок и файлов) со следующей структурой.