English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этом руководстве мы изучим, как использовать pip для установки и управления пакетами Python.
pip является стандартным менеджером пакетов Python. Мы можем использовать pip для установки других пакетов, которые отсутствуют в стандартной библиотеке Python. Например,
pip install numpy
pip install numpy
Как установить pip?
pip предварительно установлен в Python 3.4 или более ранних версиях. Мы можем проверить, установлен ли pip, используя следующую команду в командной строке:
pip --version
Если pip уже существует в системе, pip покажет соответствующую версию, например:
pip 19.3.1 от C:\Python37\lib\site-packages\pip (python 3.7)Если мы используем старую версию Python или pip не установлен по другой причине, следуйте инструкциям, указанным по этой ссылке:
Использование pip
pip - это командная строка программа. После установки pip можно добавить команду, которая может использоваться вместе с командной строкой.
Основная грамматика pip:
Установка пакетов с помощью pip
Кроме стандартных библиотек Python, сообщество Python также создало множество пакетов для различных разработчиков рамок, инструментов и библиотек.Большинство этих пакетов официально хранятся и публикуются вpip позволяет нам скачивать и устанавливать эти пакеты.
Команда install используется для установки пакетов с помощью pip. Давайте приведем пример:
Предположим, что мы хотим установить requests, популярную библиотеку HTTP для Python. Мы можем выполнить это с помощью следующих команд.
pip install requests
Результат вывода
Сборка requests Использование кэшированного https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl Сборка chardet<3.1.0,>=3.0.2 Использование кэшированного https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl Собираются urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 Используется кэшированный https://files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl Собираются idna<2.9,>=2.5 Используется кэшированный https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Собираются certifi>=2017.4.17 Загружается https://files.pythonhosted.org/packages/b9/63/df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99/certifi-2019.11.28-py2.py3-none-any.whl (156kB) Устанавливаются собранные пакеты: chardet, urllib3, idna, certifi, requests Успешно установлены certifi-2019.11.28 chardet-3.0.4 idna-2.8 requests-2.22.0 urllib3-1.25.7
Здесь мы можем видеть, что команда install используется вместе с pip, за которой следует имя пакета, который мы хотим установить (requests).
Pip также устанавливает все другие зависимые компоненты, необходимые для этого пакета, такие как chardet, urllib3 и certifi.
Если использовать pip install в минимальной форме, pip загрузит последнюю версию пакета.
Иногда, только определенная версия совместима с другими программами. Поэтому мы можем определить версию пакета следующим образом:
pip install requests==2.21.0
Here, we have already installed version 2.21.0 of the requests library.
The pip list command can be used to list all available packages in the current Python environment.
pip list
Результат вывода
Package Version ---------- ---------- certifi 2019.11.28 chardet 3.0.4 idna 2.8 pip 19.3.1 requests 2.22.0 setuptools 45.0.0 urllib3 1.25.7 wheel 0.33.6
The pip show command displays information about one or more installed packages. Let's look at an example:
pip show requests
Результат вывода
Name: requests Version: 2.22.0 Summary: Python HTTP for Humans. Home-page: http://python-requests.org Author: Kenneth Reitz Author-email: [email protected] License: Apache 2.0 Location: c:\users\dell\desktop\venv\lib\site-packages Requires: certifi, chardet, urllib3, idna Required-by:
Here, the show command displays information about the requests library. Note the following output:RequiresAndRequired-byColumn.
The 'Requires' column shows which dependencies the requests library needs. And, the 'Required-by' column shows which packages require requests.
We can do this by uninstalling the package pip and using the pip uninstall command.
Assuming we want to remove the requests library from the current Python environment. We can do this in the following way:
pip uninstall requests
Результат вывода
Uninstalling requests-2.22.0: Would remove: C:\Python37\lib\site-packages\requests-2.22.0.dist-info\* C:\Python37\lib\site-packages\requests\* Продолжить (д/н)? д Успешно удален requests-2.22.0
Как мы видим, пакет requests был удален после последнего запроса.
ВниманиеПримечание: даже если удален указанный пакет, не удаляются пакеты, установленные в качестве зависимостей. В этом случае, зависимости библиотеки requests (chardet, urllib3 и certifi) не будут удалены.
Если необходимо также удалить зависимости пакета, можно использовать команду pip show, чтобы проверить установленные пакеты и вручную удалить их.
Файл, содержащий имена всех пакетов, также можно использовать для пакетной установки Python-пакетов.
Давайте посмотрим на пример:
Предположим, что у нас есть файлrequirements.txtвключая следующие записи:
numpy Pillow pygame
Мы можем использовать одну команду, чтобы установить все эти пакеты и их зависимости с помощью pip.
pip install -r requirements.txt
Результат вывода
Сборка numpy Использование кэшированного https://files.pythonhosted.org/packages/a9/38/f6d6d8635d496d6b4ed5d8ca4b9f193d0edc59999c3a63779cbc38aa650f/numpy-1.18.1-cp37-cp37m-win_amd64.whl Сборка Pillow Использование кэшированного https://files.pythonhosted.org/packages/88/6b/66f502b5ea615f69433ae1e23ec786b2cdadbe41a5cfb1e1fabb4f9c6ce9/Pillow-7.0.0-cp37-cp37m-win_amd64.whl Сборка pygame Использование кэшированного https://files.pythonhosted.org/packages/ed/56/b63ab3724acff69f4080e54c4bc5f55d1fbdeeb19b92b70acf45e88a5908/pygame-1.9.6-cp37-cp37m-win_amd64.whl Устанавливается собранный пакет: numpy, Pillow, pygame Успешно установлено Pillow-7.0.0 numpy-1.18.1 pygame-1.9.6
Здесь мы используем ту же команду install для pip.
Однако, параметр -r specifies, что мы передаем файл требований, а не имя пакета.
Вместо ручного создания файла требований pip предоставляет команду freeze. Давайте посмотрим, как использовать эту команду.
Предположим, что текущая среда Python имеет следующие пакеты. Вы можете показать их с помощью pip list.
Package Version ---------- ------- numpy 1.17.0 Pillow 6.1.0 pip 19.3.1 pygame 1.9.6 setuptools 45.0.0 wheel 0.33.6
Команда freeze перечисляет пакеты, которые не установлены предварительно в Python.
pip freeze
Результат вывода
numpy==1.17.0 Pillow==6.1.0 pygame==1.9.6
Команда pip freeze показывает пакеты и их версии в формате файла требований.
Таким образом, вы можете использовать следующую команду для перенаправления вывода в создание файла требований:
pip freeze > requirements.txt
Создайте новый файл в рабочем каталогеrequirements.txtФайл. В будущем вы можете использовать его в других средах Python для установки определенной версии пакета.
Команда search используется для поиска пакетов в командной строке. Давайте посмотрим на пример:
pip search pygame
Результат вывода
pygame-anisprite (1.0.0) - Animated sprites for PyGame! pygame-ai (0.1.2) - Videogame AI package for PyGame pygame-engine (0.0.6) - Простой игровой движок pygame pygame-assets (0.1) - Менеджер ресурсов для приложений Pygame pygame-gui (0.4.2) - Модуль GUI для pygame 2 pygame-spritesheet (0.2.0) - Расширение pygame для Python, которое предоставляет класс SpriteSheet pygame-minesweeper (1.0) - Игра Minesweeper, реализованная на Python с использованием pygame pygame-menu (2.1.0) - Меню для pygame, простое, легковесное и легко использовать pygame-plot (0.1) - Быстрая визуализация данных с использованием pygame в стиле matplotlib pygame (1.9.6) - Разработка игр на Python ...
Здесь мы искали библиотеку pygame. Показаны все другие пакеты, соответствующие ключевому слову. Эта команда помогает найти相关工作.
Чтобы узнать больше о pip, пожалуйста, посетите:Python pip (официальная документация)