Python pip

I denne opplæringen lærer vi hvordan du bruker pip til å installere og administrere Python-pakker.

Hva er pip?

piper standard pakkebehandling for Python. Vi kan bruke piptil å installere flere pakker som ikke er tilgjengelige i Python-standardbiblioteket. For eksempel,

 pip install numpy 

Hvis vi hadde installert pippå systemet vårt, ville denne kommandoen ha installert numpybiblioteket.

Hvordan installere pip?

pipkommer forhåndsinstallert på Python versjoner 3.4 eller eldre. Vi kan sjekke om det piper installert ved å bruke følgende kommando i konsollen:

 pip --version 

Hvis pipdet allerede er tilgjengelig i systemet, vises den respektive pipversjonen, som:

 pip 19.3.1 fra C: Python37 lib site-packages pip (python 3.7) 

Hvis vi bruker en eldre versjon av Python eller ikke har pipinstallert av annen grunn, følg trinnene som beskrevet i denne lenken: pipinstallasjon

Bruker pip

piper et kommandolinjeprogram. Etter installasjonen piplegges det til en kommando som kan brukes med ledeteksten.

Den grunnleggende syntaksen til pip er:

 pip 

Installere pakker med pip

Bortsett fra det vanlige Python-biblioteket, bidrar Python-samfunnet til et omfattende antall pakker skreddersydd for ulike utviklingsrammer, verktøy og biblioteker.

De fleste av disse pakkene er offisielt vert og publisert i Python Package Index (PyPI). piplar oss laste ned og installere disse pakkene.

Grunnleggende pakkeinstallasjon

Den installkommandoen brukes til å installere pakker hjelp pip. La oss ta et eksempel:

Anta at vi vil installere requests, et populært HTTP-bibliotek for Python. Vi kan gjøre det ved hjelp av følgende kommando.

 pip install requests 

Produksjon

Samle forespørsler ved hjelp av hurtigbufret 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 Samler urllib3! = 1.25.0,! = 1.25.1 //files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl Samle idna = 2.5 Bruke hurtigbuffert https://files/14 /2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Samle inn certifi> = 2017.4.17 Nedlasting https: //files.pythonhosted.org / packages / b9 / 63 / df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99 / certifi-2019.11.28-py2.py3-none-any.whl (156kB) Installerer samlet pakker: chardet, urllib3, certifi 3.0.4 idna-2.8 forespørsler-2.22.0 urllib3-1.25.7

Her kan vi se at den piphar blitt brukt med installkommandoen etterfulgt av navnet på pakken vi vil installere ( requests).

Alle andre avhengigheter som chardet, urllib3og som certifikreves for denne pakken, er også installert av pip.

Spesifisere pakkeversjon

Når pip installbrukes i minimal form, piplaster den ned den nyeste versjonen av pakken.

Noen ganger er bare en bestemt versjon kompatibel med andre programmer. Så vi kan definere versjonen av pakken på følgende måte:

 pip install forespørsler == 2.21.0 

Her har vi installert 2.11.0-versjonen av requestsbiblioteket.

Oppføring av installerte pakker med pip

Den pip listkommandoen kan brukes til å liste opp alle tilgjengelige pakker i gjeldende Python miljø.

 pip list 

Produksjon

 Pakkeversjon ---------- ---------- certifi 2019.11.28 chardet 3.0.4 idna 2.8 pip 19.3.1 forespørsler 2.22.0 setuptools 45.0.0 urllib3 1.25.7 hjul 0.33 .6 

Pakkeinformasjon med pip show

Den pip showkommandoen viser informasjon om en eller flere installerte pakker. La oss se på et eksempel:

 pip show requests 

Produksjon

Navn: forespørsler Versjon: 2.22.0 Sammendrag: Python HTTP for mennesker. Hjemmeside: http://python-requests.org Forfatter: Kenneth Reitz Forfatter-e-post: [email protected] Lisens: Apache 2.0 Sted: c: brukere dell desktop venv lib nettstedspakker Krever: certifi, chardet, urllib3, idna Påkrevd av:

Her showviser kommandoen informasjon om requestsbiblioteket. Legg merke til kolonnen Krever og Påkrevd i utgangen ovenfor.

Krever kolonne viser hvilke avhengigheter requestsbiblioteket krever. Og kolonnen Obligatorisk viser pakkene som krever requests.

Avinstallere en pakke med pip

Vi kan avinstallere en pakke ved å bruke pipmed pip uninstallkommandoen.

Anta at vi vil fjerne requestsbiblioteket fra vårt nåværende Python-miljø. Vi kan gjøre det på følgende måte:

 pip uninstall requests 

Produksjon

Avinstallere forespørsler-2.22.0: Vil fjerne: C: Python37 lib site-packages requests-2.22.0.dist-info * C: Python37 lib site-packages anmodninger * Fortsett (y / n)? y Avinstallerte forespørsler-2.22.0

Som vi ser, blir requestspakken fjernet etter den siste ledeteksten.

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.

For å lære mer om pip, besøk: Python pip (offisiell dokumentasjon)

Interessante artikler...