PyPI и управление пакетами с помощью pip в Python

В этом руководстве вы узнаете о Python Package Index (PyPI) и о том, как использовать pip для управления сторонними пакетами.

Содержание

Что такое индекс пакетов (PyPI) в Python?

Python имеет богатую стандартную библиотеку, которую вы можете сразу же использовать в своем проекте. Если вам нужен пакет, которого нет в стандартной библиотеке, вы можете найти его в хранилище пакетов PyPI (Python Package Index).

Индекс пакетов Python (PyPI) — это крупнейший репозиторий Python. Он содержит множество пакетов, разработанных и поддерживаемых сообществом Python.

Чтобы найти пакет, вы можете использовать строку поиска. Например, для поиска пакетов, обрабатывающих HTTP-запросы, вы можете просто использовать ключевое слово Requests. Результаты поиска покажут множество пакетов. Подробную информацию о каждом пакете можно найти, перейдя по соответствующей ссылке.

Давайте рассмотрим пакет запросов requests.

Версия пакета

Пакеты Python используют семантическое управление версиями, которое состоит из номеров версий, состоящих из трех частей: основная версия, дополнительная версия и исправление:

major.minor.patch

Номер патча возрастает для незначительных изменений и исправлений ошибок, которые не меняют работу пакета. Второстепенная версия также увеличивается для выпусков, которые добавляют новые функции, обратно совместимые. Основная версия увеличивается для изменений, которые не имеют обратной совместимости.

Например, пакет Requests имеет версию 2.24.0 (на момент написания статьи). Основная версия — 2, дополнительная версия — 24, а патч — нулевой.

Если вы используете в своем проекте версию 2.24.0, вы можете обновить ее до любой версии, имеющей основную версию 2, например 2.25.1.

Если вы установите пакет более высокой основной версии, например 3.0.0, ваше приложение может работать некорректно.

Что такое pip в Python?

Чтобы загрузить пакет, вы используете команду, описанную в модуле:

pip install requests

Но что такое pip?

pip — установщик пакетов для Python. Pip позволяет устанавливать пакеты из PyPI и других репозиториев.

Python по умолчанию поставляется с pip. Чтобы проверить, доступен ли pip на вашем компьютере, вы можете открыть командную строку(или Powershell) в Windows и ввести следующую команду:

pip --V

Она покажет что-то вроде этого:

pip 20.2.4 from C:\Users\<username>\AppData\Roaming\Python\Python38\site-packages\pip(python 3.8)

…где 20.2.4 — это версия, а C:\Users\AppData\Roaming\Python\Python38\site-packages\pip — это местоположение pip.

Если вы используете macOS или Linux, вы можете запустить терминал и использовать pip3 вместо pip:

pip3 --V

Установка пакета

Чтобы установить пакет из PyPI, вы используете следующую команду в Windows:

pip install <package_name>

И измените pip на pip3 в macOS и Linux:

pip3 install <package_name>

Например, следующая команда устанавливает пакет requests:

pip install requests

Отныне вы можете использовать пакет Requests в любом проекте. Например, вы можете создать новый проект под названием pip-demo и использовать пакет запросов.

Следующий код использует пакет Requests для отправки HTTP-запроса на https://pypi.org/ и отображает код состояния HTTP:

import requests

response = requests.get('https://pypi.org/')
print(response.status_code)

Выход:

200

Чтобы установить пакет определенной версии, используйте следующую команду:

pip install <package_name>==<version>

Следующая команда устанавливает пакет Requests версии 2.20.1:

pip install requests==2.20.1

Список установленных пакетов

Чтобы просмотреть все установленные пакеты, вы используете следующую команду pip:

pip list

Она вернет список пакетов, установленных на вашем компьютере, следующим образом:

Package          Version
---------------- ---------
appdirs          1.4.4
autopep8         1.5.4
certifi          2020.6.20
chardet          3.0.4
colorama         0.4.4
distlib          0.3.1
filelock         3.0.12
idna             2.10
Pillow           8.0.0
pip              20.2.4
pycodestyle      2.6.0
requests         2.24.0

Чтобы проверить, какие пакеты устарели, используйте следующую команду:

pip list --outdated

Выход:

Package    Version Latest Type
---------- ------- ------ -----
setuptools 47.1.0  50.3.2 wheel

Она показывает имя пакета, установленную версию и последнюю версию.

Удаление

Чтобы удалить пакет, вы используете команду pip uninstall:

pip uninstall <package_name>

Вам будет предложено подтвердить следующее:

Proceed(y/n)?

Если вы наберете y, pip удалит пакет. В противном случае этого не произойдет.

Список зависимостей пакета

Когда вы устанавливаете пакет и если он использует другие пакеты, pip установит пакет и его зависимости, а также зависимость зависимостей и так далее.

Чтобы показать зависимости пакета, вы используете следующую команду:

pip show <package_name>

Следующая команда показывает зависимости пакета запросов:

pip show requests

В строке Requires перечислены пакеты, используемые пакетами requests.

Requires: urllib3, chardet, idna, certifi
Похожие посты
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *