I den här handledningen lär vi oss hur man använder pip för att installera och hantera Python-paket.
Vad är pip?
pip
är standardpakethanteraren för Python. Vi kan använda för pip
att installera ytterligare paket som inte är tillgängliga i Python-standardbiblioteket. Till exempel,
pip install numpy
Om vi hade installerat pip
på vårt system skulle det här kommandot ha installerat numpy
biblioteket.
Hur installerar jag pip?
pip
kommer förinstallerat på Python version 3.4 eller äldre. Vi kan kontrollera om det pip
är installerat med hjälp av följande kommando i konsolen:
pip --version
Om det pip
redan finns tillgängligt i systemet pip
visas respektive version, som:
pip 19.3.1 från C: Python37 lib site-packages pip (python 3.7)
Om vi använder en äldre version av Python eller inte har pip
installerat av någon annan anledning, följ stegen som beskrivs i den här länken: pipinstallation
Använda pip
pip
är ett kommandoradsprogram. Efter installationen pip
läggs ett kommando till som kan användas med kommandotolken.
Den grundläggande syntaxen för pip är:
pip
Installera paket med pip
Förutom det vanliga Python-biblioteket bidrar Python-communityn till ett omfattande antal paket skräddarsydda för olika utvecklingsramar, verktyg och bibliotek.
De flesta av dessa paket är officiellt värd och publiceras i Python Package Index (PyPI). pip
låter oss ladda ner och installera dessa paket.
Grundläggande paketinstallation
Det install
kommando som används för att installera paket med hjälp av pip
. Låt oss ta ett exempel:
Antag att vi vill installera requests
, ett populärt HTTP-bibliotek för Python. Vi kan göra det med hjälp av följande kommando.
pip install requests
Produktion
Samla förfrågningar med hjälp av cachat https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl Collecting chardet .pythonhosted.org / packages / bc / a9 / 01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8 / chardet-3.0.4-py2.py3-none-any.whl Samlar urllib3! = 1.25.0,! = 1.25.1, 1.25.1 //files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl Insamling av idna = 2.5 Använda cache https://files/ /2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Insamling certifiering> = 2017.4.17 Nedladdning https: //files.pythonhosted.org / package / b9 / 63 / df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99 / certifi-2019.11.28-py2.py3-none-any.whl (156kB) Installera samlade paket: chardet, urllib3 3.0.4 idna-2.8 begäranden-2.22.0 urllib3-1.25.7
Här kan vi se att den pip
har använts med install
kommandot följt av namnet på paketet vi vill installera ( requests
).
Alla andra beroenden gillar chardet
, urllib3
och certifi
som krävs för det här paketet är också installeras av pip
.
Specificera paketversion
När den pip
install
används i minimal form pip
laddar den ned den senaste versionen av paketet.
Ibland är bara en specifik version kompatibel med andra program. Så vi kan definiera paketversionen på följande sätt:
pipinstallationsförfrågningar == 2.21.0
Här har vi installerat 2.11.0-versionen av requests
biblioteket.
Listar installerade paket med pip
Det pip list
kommando kan användas för att lista alla tillgängliga paket i den aktuella Python miljön.
pip list
Produktion
Paketversion ---------- ---------- certifi 2019.11.28 chardet 3.0.4 idna 2.8 pip 19.3.1 begär 2.22.0 setuptools 45.0.0 urllib3 1.25.7 hjul 0.33 .6
Paketinformation med pipshow
Den pip show
kommandot visar information om en eller flera installerade paket. Låt oss titta på ett exempel:
pip show requests
Produktion
Namn: begäran Version: 2.22.0 Sammanfattning: Python HTTP för människor. Hemsida: http://python-requests.org Författare: Kenneth Reitz Författar-e-post: [email protected] Licens: Apache 2.0 Plats: c: användare dell desktop venv lib site-package Kräver: certifi, chardet, urllib3, idna Krävs av:
Här show
visar kommandot information om requests
biblioteket. Lägg märke till kolumnen Kräver och Krävs i ovanstående utdata.
Kolumnen Kräver visar vilka beroenden requests
biblioteket kräver. Och kolumnen Obligatorisk visar de paket som kräver requests
.
Avinstallerar ett paket med pip
Vi kan avinstallera ett paket pip
med pip uninstall
kommandot.
Antag att vi vill ta bort requests
biblioteket från vår nuvarande Python-miljö. Vi kan göra det på följande sätt:
pip uninstall requests
Produktion
Avinstallera förfrågningar-2.22.0: Skulle ta bort: C: Python37 lib site-packages requests-2.22.0.dist-info * C: Python37 lib site-package requests * Fortsätt (y / n)? y Avinstallerade begäranden-2.22.0
Som vi kan se requests
tas paketet bort efter den sista prompten.
Note: Even though the specified package is removed, the packages that were installed as dependencies are not removed. In this case, the dependencies (chardet
, urllib3,
and certifi)
of the requests
library aren't uninstalled.
If we need to remove the dependencies of a package as well, we can use the pip show
command to view installed packages and remove them manually.
Using Requirement Files
A file containing all the package names can also be used to install Python packages in batches.
Let's take a look at an example:
Suppose we have a file requirements.txt which has the following entries:
numpy Pillow pygame
We can install all these packages and their dependencies by using a single command in pip
.
pip install -r requirements.txt
Output
Collecting numpy Using cached https://files.pythonhosted.org/packages/a9/38/f6d6d8635d496d6b4ed5d8ca4b9f193d0edc59999c3a63779cbc38aa650f/numpy-1.18.1-cp37-cp37m-win_amd64.whl Collecting Pillow Using cached https://files.pythonhosted.org/packages/88/6b/66f502b5ea615f69433ae1e23ec786b2cdadbe41a5cfb1e1fabb4f9c6ce9/Pillow-7.0.0-cp37-cp37m-win_amd64.whl Collecting pygame Using cached https://files.pythonhosted.org/packages/ed/56/b63ab3724acff69f4080e54c4bc5f55d1fbdeeb19b92b70acf45e88a5908/pygame-1.9.6-cp37-cp37m-win_amd64.whl Installing collected packages: numpy, Pillow, pygame Successfully installed Pillow-7.0.0 numpy-1.18.1 pygame-1.9.6
Here, we have used the same install
command with pip
.
However, the additional argument -r
specifies pip
that we are passing a requirements file rather than a package name.
Creating Requirements File
As an alternative to manually creating the requirements file, pip
offers the freeze
command. Let's look at how to use this command.
Suppose our current Python environment has the following packages. It can be displayed using 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
The packages that don't come preinstalled will Python are listed using the freeze
command.
pip freeze
Output
numpy==1.17.0 Pillow==6.1.0 pygame==1.9.6
The pip freeze
command displays the packages and their version in the format of the requirements file.
So this output can be redirected to create a requirements file using the following command:
pip freeze> requirements.txt
A new requirements.txt file is created in the working directory. It can later be used in other Python environments to install specific versions of packages.
Search packages in pip
The search
command is used to search for packages in the command prompt. Let's look at an example:
pip search pygame
Output
pygame-anisprite (1.0.0) - Animated sprites for PyGame! pygame-ai (0.1.2) - Videogame AI package for PyGame pygame-engine (0.0.6) - Simple pygame game engine. pygame-assets (0.1) - Assets manager for Pygame apps pygame-gui (0.4.2) - A GUI module for pygame 2 pygame-spritesheet (0.2.0) - Python pygame extension that provides SpriteSheet class. pygame-minesweeper (1.0) - Minesweeper game implemented in python using pygame pygame-menu (2.1.0) - A menu for pygame, simple, lightweight and easy to use pygame-plot (0.1) - Quick visualization of data using pygame with a matplotlib style pygame (1.9.6) - Python Game Development…
Here, we have searched for a library called pygame
. All other packages that match the keyword are displayed. This command is helpful for finding related packages.
För att lära dig mer om pip
, besök: Python pip (officiell dokumentation)