Как создать новый Python модуль

Python является одним из наиболее популярных языков программирования, который используется для разработки приложений практически для любого вида. От административных скриптов, автоматизации до web и мобильных приложений – во всех этих областях число разработчиков Python постоянно растет быстрыми темпами.

Одной из лучших вещей в Python является большое количество Python модулей, которые охватывают почти все области программирования.

Причиной, по которой так много модулей Python является то, что модуль очень легко написать один раз, и сделать его доступным в любом месте, используя менеджеров пакетов
Рассмотрим, как создать простой модуль и развернуть его на менеджера пакетов PyPI.

Создание простого модуля

Начнем с создания следующей структуры каталогов:

 

 

 

 

Любой модуль имеет файл __init__.py. Он может быть пустым или содержать некоторый код инициализации. В этом примере он остается пустым.

Файл mymath.py содержит код  реализации модуля:

 

 

 

 

Для этого простого примера использованы две простые функции, но вы можете определить что угодно в модуле Python или использовать другие модули

Теперь мы можем протестировать модуль:

 

 

 

И мы можем использовать его так же, как в mytest.py.

Развертывание модуля

Если мы хотим развернуть модуль, чтобы все могли его использовать, мы должны использовать менеджер пакетов. Самым популярным вариантом для питона PyPi.

Мы храним код на GitHub и развертывание пакета на PyPi
Первый шаг – создать репозиторий GitHub
Сначала  регистрируемся на  GitHub (если Вы еще этого не сделали) и создаем новый репозиторий.
Используя командную строку в корневой директории, выполняем:

 

 

 

 

 

Добавляем файлы и выполняем:

 

 

Мы готовы использовать PyPi.
Сначала нужно создать учетную запись на  тестовых  и production сайтах PyPi
Используйте один и тот же email и пароль:

.pypirc file

Создайте вот такой  файл в Вашей  домашней директории (~) и  сохраните  логин и пароль внутри:

 

 

 

 

 

 

 

 

 

В корневом каталоге необходимо поместить 2 файла: setup.py, setup.cfg:


setup.cfg:

 

 

setup.py:
from distutils.core import setup
setup(
  name = 'pysimplib',
  packages = ['pysimplib'], # this must be the same as the name above
  version = '0.1',
  description = 'A tutorial lib',
  author = 'Liran BH',
  author_email = 'liran@discoversdk.com',
  url = 'https://github.com/DiscoverSDK/pysimplib',
  download_url = 'https://github.com/DiscoverSDK/pysimplib/tarball/0.1',
  keywords = ['add', 'sub', 'tests'], 
  classifiers = [],
)

Обратите внимание, что это версия 0.1, так что нам нужно создать тэги на GitHub:

 

 

Теперь можно обновить лицензионный файл (MIT или аналог).

Публикация  в PyPi:

 

 

 

Тестирование нашего модуля.

Сначала нужно установить модуль:

 

 

 

 

Все готово, модуль можно использовать:

 

 

 

 

Все файлы использованные в этой статье  можно найти здесь.

Поделитесь с друзьями:

Оставьте комментарий