
В процессе разработки с использованием Python часто возникает необходимость установить определённую версию библиотеки. Это может быть связано с требованиями совместимости с проектом или тестированием новой функциональности. В этой статье рассмотрим несколько способов, как установить точную версию библиотеки, используя pip и другие инструменты.
Для того чтобы установить нужную версию библиотеки, используйте команду pip install, указав версию после знака равенства. Например, чтобы установить версию библиотеки requests 2.25.0, достаточно выполнить команду:
pip install requests==2.25.0
Если версия библиотеки ещё не установлена, команда автоматически загрузит её с PyPI. Важно следить за тем, чтобы версия соответствовала требованиям вашего проекта, иначе могут возникнуть проблемы с совместимостью кода.
Для управления версиями библиотек и их зависимостями в проекте полезно использовать файл requirements.txt. В нем можно указать точные версии всех нужных пакетов. Для создания такого файла достаточно использовать команду:
pip freeze > requirements.txt
При установке зависимостей через pip с этим файлом, используются версии, которые были зафиксированы на момент создания файла:
pip install -r requirements.txt
Это позволяет гарантировать, что ваш проект будет работать одинаково на всех машинах, где будет установлен такой же набор библиотек.
Проверка доступных версий библиотеки через PyPI

- Выполните команду
pip index versions <название_библиотеки>, чтобы увидеть список всех доступных версий. Например, для библиотекиrequestsкоманда будет выглядеть так:pip index versions requests. - Другой способ – зайти на страницу библиотеки на сайте PyPI и в разделе «Release History» найти все доступные версии.
Эти методы позволят вам легко получить информацию о том, какие версии библиотеки можно установить или использовать в вашем проекте.
Использование команды pip для установки конкретной версии

Для установки конкретной версии библиотеки в Python используется утилита pip, которая позволяет указать нужную версию прямо в команде. Важно точно понимать синтаксис и особенности работы с версиями.
Чтобы установить определённую версию библиотеки, используйте следующую команду:
pip install имя_библиотеки==версия
Например, чтобы установить версию 1.18.5 библиотеки numpy, выполните команду:
pip install numpy==1.18.5
Если версия не указана или указана некорректно, pip установит последнюю доступную версию библиотеки.
Для того чтобы проверить доступные версии библиотеки, можно использовать команду:
pip install имя_библиотеки==
После этого pip отобразит список доступных версий.
Также возможна установка диапазона версий, если вам нужно, чтобы версия удовлетворяла определённым условиям. Например:
pip install имя_библиотеки>=1.18.0,<=1.19.0– установит любую версию между 1.18.0 и 1.19.0.pip install имя_библиотеки>1.18.0– установит версию, большую чем 1.18.0.
После установки нужной версии можно проверить установленную версию с помощью команды:
pip show имя_библиотеки
Эта команда отобразит информацию о пакете, включая его версию.
Если требуется удалить текущую версию и установить другую, используйте:
pip uninstall имя_библиотеки
Затем повторите установку с нужной версией, указав её в команде.
Как найти нужную версию библиотеки в документации

Для нахождения нужной версии библиотеки Python в официальной документации следует использовать несколько методов. На сайте проекта обычно указаны доступные версии в разделе "Releases" или на странице установки.
1. Перейдите на страницу библиотеки на PyPI. Там в разделе "Release History" можно найти список всех выпущенных версий. Каждая версия будет иметь ссылку на соответствующую документацию и ссылки на установку через pip.
2. Изучите документацию на GitHub или аналогичных платформах. В репозиториях часто есть файл CHANGELOG.md или RELEASES.md, в котором перечислены изменения и версии библиотеки. Эти файлы помогут понять, какие функции или исправления добавлены в каждой версии.
3. Используйте команду pip show <имя библиотеки>, чтобы получить информацию о текущей установленной версии. Это поможет определить, если версия библиотеки установлена локально, и потребуется ли обновление.
4. Если необходимо использовать специфическую версию, ищите соответствующие разделы в документации, где указывается поддержка версий Python для каждой из них. Некоторые библиотеки поддерживают только определённые версии Python, что может ограничить выбор версии.
5. Программисты также могут обратиться к официальной документации Python для получения информации о совместимости версий Python с различными библиотеками. В некоторых случаях версия библиотеки может зависеть от минимальной или максимальной версии Python, указанной в документации.
Установка старой версии библиотеки с помощью virtualenv

Для установки старой версии библиотеки Python рекомендуется использовать virtualenv. Этот инструмент позволяет создавать изолированные окружения, в которых можно работать с разными версиями библиотек без конфликтов с системными пакетами. Следующие шаги помогут установить нужную версию библиотеки в виртуальном окружении.
1. Установите virtualenv, если он еще не установлен. Для этого используйте команду:
pip install virtualenv
2. Создайте новое виртуальное окружение. Для этого выполните команду, указав название окружения:
virtualenv myenv
3. Активируйте виртуальное окружение. В зависимости от операционной системы используйте одну из следующих команд:
- Windows:
myenv\Scripts\activate - Linux/Mac:
source myenv/bin/activate
После активации окружения вы увидите, что командная строка изменилась, и она будет указывать на активированное окружение.
4. Установите нужную версию библиотеки с помощью команды pip install, указав конкретную версию. Например, для установки версии 1.18.5 библиотеки NumPy используйте:
pip install numpy==1.18.5
5. Проверьте установленную версию, выполнив команду:
pip show numpy
6. После завершения работы с виртуальным окружением деактивируйте его командой:
deactivate
Теперь у вас есть изолированное окружение с нужной версией библиотеки, которое не влияет на другие проекты или глобальные установки.
Управление зависимостями через файлы requirements.txt

Файл requirements.txt используется для хранения всех зависимостей проекта в формате, который позволяет легко установить нужные библиотеки. Каждая строка в файле представляет собой одну зависимость с указанной версией или диапазоном версий.
Для создания файла requirements.txt достаточно выполнить команду:
pip freeze > requirements.txt
Это сохранит все текущие библиотеки и их версии в файл. После этого можно использовать команду для установки всех зависимостей, указанных в файле:
pip install -r requirements.txt
Можно указать конкретные версии библиотек. Например:
numpy==1.21.0
Также возможно задать диапазон версий, чтобы обеспечить совместимость с различными версиями. Пример:
numpy>=1.18,<1.22
Если требуется обновить зависимости в файле, можно использовать команду:
pip freeze --local > requirements.txt
В проекте с несколькими средами или для специфичных настроек можно использовать дополнительные файлы, например, для разработки или тестирования. Для этого создают отдельные файлы, такие как requirements-dev.txt или requirements-test.txt. В них можно указать дополнительные пакеты для этих целей.
Важно не забывать периодически обновлять файл requirements.txt, особенно после добавления новых зависимостей в проект, чтобы файл всегда отражал актуальное состояние всех библиотек, которые необходимы для работы программы.
Использование флагов pip для установки нестабильных версий

Для установки нестабильных версий библиотек в Python через pip используются специальные флаги, которые позволяют работать с версиями, находящимися в разработке или на стадии тестирования. Это важно, когда требуется получить доступ к новым функциональностям или исправлениям, еще не опубликованным в стабильных релизах.
Один из таких флагов – --pre. Он позволяет pip устанавливать альфа-, бета- или кандидатные версии, которые обычно исключаются из стандартных запросов. Без этого флага pip будет избегать нестабильных версий, даже если они доступны в репозиториях.
Пример использования:
pip install --pre <пакет>
Кроме этого, можно указать конкретную нестабильную версию библиотеки. Для этого достаточно использовать точное указание версии с флагом ==. Например, если вы хотите установить бета-версию пакета:
pip install <пакет>==1.0.0b1
Еще один важный момент – это использование флага --no-binary, который позволяет игнорировать предварительно скомпилированные бинарники и скачивать исходный код библиотеки. Это может быть полезно, когда требуется установить нестабильную версию, которая не была скомпилирована в бинарный формат.
Пример команды:
pip install --no-binary :all: <пакет>
Также можно использовать флаг --upgrade, если необходимо обновить установленную библиотеку до нестабильной версии:
pip install --upgrade --pre <пакет>
В случае работы с приватными репозиториями или нестандартными источниками пакетов можно указать путь к репозиторию с флагом -i. Это позволяет получить доступ к нестабильным версиям, находящимся в кастомных хранилищах:
pip install --pre -i <пакет>
Как обновить или откатить установленную библиотеку до нужной версии

Для обновления или отката версии библиотеки Python используется команда pip с соответствующими флагами. Чтобы изменить установленную версию, выполните следующие шаги:
1. Проверка текущей версии библиотеки
Прежде чем обновлять или откатывать библиотеку, узнайте ее текущую версию с помощью команды:
pip show имя_библиотеки
2. Обновление библиотеки
Для обновления до последней доступной версии используйте команду:
pip install --upgrade имя_библиотеки
Если вам нужно обновить библиотеку до конкретной версии, укажите ее прямо в команде:
pip install имя_библиотеки==версия
3. Откат до предыдущей версии
Чтобы установить старую версию библиотеки, также укажите нужный номер версии:
pip install имя_библиотеки==версия
Перед откатом рекомендуется проверить, какие версии доступны, с помощью команды:
pip install имя_библиотеки>==
4. Удаление предыдущих версий
Если требуется удалить старую версию перед установкой новой, используйте команду:
pip uninstall имя_библиотеки
Вы можете также указать --yes для автоматического подтверждения удаления, без необходимости вручную вводить подтверждение.
5. Виртуальные окружения
Если вы работаете с проектом в виртуальном окружении, сначала активируйте его. Это позволит работать с конкретной версией библиотеки без влияния на систему в целом. Для активации используйте команду:
source название_окружения/bin/activate
6. Проверка установки
После установки или отката библиотеки всегда проверяйте, что нужная версия была успешно установлена, используя команду:
pip show имя_библиотеки
Эти шаги помогут вам контролировать версии библиотек в вашем проекте и поддерживать совместимость с необходимыми зависимостями.
