Python: Настройка окружения
Теория: Глобальная установка пакетов
Некоторые пакеты Python представляют собой не просто подключаемые библиотеки, а законченные программы. Например, утилита pydf, которая позволяет посмотреть свободное место на диске. Сама эта утилита не привязана к Python, она работает с операционной системой.
Подобные утилиты не связаны с конкретным проектом и даже с самим языком. Подразумевается, что ими может воспользоваться кто угодно. Для таких случаев существует еще один способ установки – tool. Посмотрите пример:
Команда tool устанавливает пакет в особую общую, но все еще виртуальную и изолированную от системы, директорию утилит. После установки утилита становится доступна в командной строке по какому-то имени, которое указано в документации проекта, например, на GitHub. В случае pydf имя пакета совпадает с именем команды:
Удалить утилиту можно командой uv tool uninstall <утилита>.
Также возникает ситуация, когда нужно запустить утилиту, но не устанавливать ее в систему насовсем. В таком случае uv предоставляет команду uv tool run <утилита> или сокращенную версию - uvx <утилита>
pip
Работая с Python вы часто будете встречать в документациях других проектов упоминания пакетного менеджера pip. pip ранее был стандартным менеджером и часто поставлялся в систему вместе с Python. Но в последних релизах Python от него отказались, потому что pip по умолчанию устанавливает пакеты в глобальное окружение и не умеет сам создавать виртуальные окружения.
Потому мы не советуем пользоваться pip для любой установки пакетов. Все зависимости проекта устанавливайте через uv. Если вы будете встречать в инструкциях команду pip install, то заменяйте ее на аналогичную uv add или uvx.



