Как упаковать Python-проект в библиотеку и CLI



Копирование модулей и правки sys.path можно заменить устанавливаемым пакетом. В руководстве на примере JSON-флаттенера разобраны структура src, файл pyproject.toml с Hatchling, зависимости и точка входа для команды терминала.

Проект разделяет функцию обработки JSON и интерфейс на Typer. Поэтому одну логику можно импортировать как библиотеку или запускать командой json-flatten из любого каталога. Структура src не позволяет Python случайно импортировать исходники вместо установленного пакета.

Editable-установка связывает окружение с исходным кодом: изменения становятся доступны без переустановки. Подход пригодится, когда внутренней утилите пора перестать быть набором файлов с относительными импортами.
Views: 45
Open in MAX Report an inaccuracy

Report an inaccuracy

Describe what needs fixing. If you have a source, add a link.

You are leaving datool.ru

The link leads to an external website. datool.ru is not responsible for its content — check the address before entering passwords or payment details.

Redirecting in 10 s

Go