Обзор:
- Установка новых пакетов без обновления установленных:
pip install
(без -U
)
- Обновлять только пакеты, которые устарели в соответствии с требованиями:
pip install --upgrade --upgrade-strategy only-if-needed
(по умолчанию в новых версиях)
- Обновление пакета и всех зависимостей до последней версии:
pip install --upgrade --upgrade-strategy eager
(по умолчанию в старых версиях)
- Установите или обновите перечисленные пакеты, не затрагивая зависимости: --no-deps
ОБНОВЛЕНИЕ (благодаря комментарию @ Jether): если вы используете последнюю версию pip, то обновление зависимостей только при необходимости теперь является поведением по умолчанию, и вам не нужно ничего делать специальный! Ответ ниже описывает шаги для более старых версий pip (который также работает для более новых версий, если вы хотите быть переносимым).
Если вы действительно хотите не трогать зависимости, тогда действительно стоит пойти по пути
pip install -U --no-deps mypackage
Но я думаю, что вам обычно не нужно обновлять зависимости, если это не требуется. В этом случае вы можете использовать:
pip install --upgrade --upgrade-strategy only-if-needed mypackage
Это обновляет требования, только если пакет требует более новой версии, чем установлена.