Всичко започва с въпроса как да създадеш и ефективно разпространяваш свои Python-пакети. В този наръчник ще ти покажа как стъпка по стъпка да разработиш пакет, който можеш да предоставиш на други. Важно е да създадеш правилните файлове и да осигуриш коректната структура. Това позволява на другите да инсталират и използват твоя пакет лесно. Нека започнем и да изследваме основите на разпространението на пакети.
Най-важни изводи
- Създай файл setup.py, който съдържа всички метаданни на твоя пакет.
- Добави файл Manifest, в който са изброени всички не-Python файлове.
- Използвай правилната команда в терминала, за да създадеш своята дистрибуция.
- Разопакованият пакет може лесно да бъде предоставен за инсталация.
Наръчник стъпка по стъпка
Има няколко ключови стъпки, които трябва да следваш, за да създадеш своя собствен Python пакет. По-долу ще намериш подробен наръчник с екранни снимки, който ще ти покаже пътя към собственото ти разпространение на пакета.
Създаване на структурата на директориите
Първо, трябва да подготвиш правилната структура на директориите за твоя пакет. Създай главна директория, която съдържа всички файлове и подпапки, включително изходен код, документация и лицензионна информация.

В този пример подготвям проста структура с файл README.md и файл за лиценз. Можеш да използваш лиценза GPL, за да определиш правата на твоя пакет.
Дефиниране на структурата на API
За да направиш твоя пакет полезен, ще ти е необходим поне един документ за API и базов клас, от който други класове могат да наследяват. Тази структура помага да се улесни разширяването и адаптирането на твоя пакет.

Един прост клас за API и инвентаризация може да предостави отлична основа.
Създаване на файла setup.py
Централна компонентa на твоя пакет е файлът setup.py. В него дефинираш всички необходими проектни информации, които са нужни в процеса на инсталиране.

В този файл импортираш необходимите модули и задаваш основните детайли на твоя пакет, включително име, автор, имейл, версия и уебсайт.
Указание на необходимите пакети
Трябва да се увериш, че всички зависимости на твоя пакет са посочени. Това се прави в setup.py, като добавиш списък с пакети, които ще бъдат доставени с твоя пакет.

Добави тук всички необходими под-пакети, например базовия клас и специфични разширени класове.
Създаване на файл Manifest
За да се увериш, че всички релевантни не-Python файлове са включени в твоя пакет, създай файл Manifest. Този файл изброява всички файлове, които ще бъдат взети предвид при пакетиране.

В този файл посочваш какви файлови типове трябва да бъдат включени в пакета, както и директории като документацията.
Команди в терминала за създаване на дистрибуцията
Сега е време да създадеш пакета. Отвори терминала си и навигирай до директорията на своята setup.py. Тук можеш да изпълниш командата за създаване на пакета.

Проверка на създадените файлове
След създаването на дистрибуцията, би трябвало да намериш директория с име dist, която съдържа опакования пакет.

Сега можеш да предадеш или инсталираш този файл.
Инсталиране на пакета
За да се увериш, че пакетът работи правилно, можеш да го инсталираш отново. За целта разопаковаш директорията и отново изпълняваш файла setup.py.

За потребители, които нямат административни права, можеш да изпълниш командата за инсталиране за текущия потребител:
Разпространение за потребителите
Ако искаш да разпространиш пакета си, увери се, че всички файлове като README.md, лиценз и setup.py са приложени. Това осигурява, че пакетът може да бъде инсталиран правилно, веднага щом потребителят го изтегли.

Ето твоят пакет е готов на файловата система и може да бъде предаден на другите.
Резюме – опаковай правилно своите Python пакети
Сега научи как да създадеш цялостна структура за своите Python пакети и успешно да генерираш дистрибуция, която лесно можеш да разпространиш. От създаването на структурата на директориите до инсталацията от крайния потребител, премина през всички стъпки, за да разпространиш ефективно своя пакет.
Често задавани въпроси
Как да създам файла Manifest?Можеш да създадеш файла Manifest ръчно и да посочиш желаните файлове, които трябва да съдържа пакетът ти.
Какво трябва да добавя в файла setup.py?Файлът setup.py трябва да съдържа името на пакета, автора, имейл адреса, версията и всички необходими зависимости.
Как да инсталирам пакета след създаването му?Можеш да инсталираш пакета локално, като навигираш до директорията на пакета и изпълниш командата python setup.py install в терминала.
Какво лиценз трябва да избера за своя пакет?Лицензът GNU GPL често се избира, за да защити свободния софтуер и неговия изходен код. Можеш обаче да обмислиш и други лицензи.
Мога ли да публикувам пакета си и на PyPI?Да, можеш да публикуваш пакета си в Python Package Index (PyPI), за да стане достъпен за широката общественост.