Python pip

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 pipatt installera ytterligare paket som inte är tillgängliga i Python-standardbiblioteket. Till exempel,

 pip install numpy 

Om vi ​​hade installerat pippå vårt system skulle det här kommandot ha installerat numpybiblioteket.

Hur installerar jag pip?

pipkommer 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 pipredan finns tillgängligt i systemet pipvisas 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 pipinstallerat 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 piplä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). piplåter oss ladda ner och installera dessa paket.

Grundläggande paketinstallation

Det installkommando 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 piphar använts med installkommandot följt av namnet på paketet vi vill installera ( requests).

Alla andra beroenden gillar chardet, urllib3och certifisom krävs för det här paketet är också installeras av pip.

Specificera paketversion

När den pip installanvänds i minimal form pipladdar 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 requestsbiblioteket.

Listar installerade paket med pip

Det pip listkommando 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 showkommandot 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 showvisar kommandot information om requestsbiblioteket. Lägg märke till kolumnen Kräver och Krävs i ovanstående utdata.

Kolumnen Kräver visar vilka beroenden requestsbiblioteket kräver. Och kolumnen Obligatorisk visar de paket som kräver requests.

Avinstallerar ett paket med pip

Vi kan avinstallera ett paket pipmed pip uninstallkommandot.

Antag att vi vill ta bort requestsbiblioteket 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 requeststas 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)

Intressanta artiklar...