Python pip

Šioje pamokoje sužinosime, kaip naudoti „pip“ norint įdiegti ir valdyti „Python“ paketus.

Kas yra pipas?

pipyra standartinis „Python“ paketų tvarkytuvas. Mes galime naudoti pippapildomiems paketams, kurių nėra „Python“ standartinėje bibliotekoje, įdiegti. Pavyzdžiui,

 pip install numpy 

Jei būtume įdiegę pipsavo sistemoje, ši komanda būtų įdiegusi numpybiblioteką.

Kaip įdiegti „pip“?

pipiš anksto įdiegta į „Python“ 3.4 ar senesnes versijas. Mes galime patikrinti, ar pipįdiegta, naudodami šią komandą konsolėje:

 pip --version 

Jei pipsistemoje jau pipyra, rodoma atitinkama versija, pvz .:

 pip 19.3.1 iš C: Python37 lib site-package pip (python 3.7) 

Jei naudojame senesnę „Python“ versiją arba pipneįdiegėme dėl kokios nors kitos priežasties, atlikite veiksmus, aprašytus šioje nuorodoje: „pip install“

Naudojant pip

pipyra komandinės eilutės programa. Įdiegus, pridedama pipkomanda, kurią galima naudoti su komandų eilute.

Pagrindinė pipo sintaksė yra:

 pip 

Įdiegti paketus su pip

Be standartinės „Python“ bibliotekos, „Python“ bendruomenė prisideda prie daugybės paketų, pritaikytų įvairioms kūrimo sistemoms, įrankiams ir bibliotekoms, skaičiaus.

Dauguma šių paketų yra oficialiai priglobti ir paskelbti „Python Package Index“ (PyPI). pipleidžia mums atsisiųsti ir įdiegti šiuos paketus.

Pagrindinis paketo diegimas

installKomanda naudojama įdiegti paketus naudojant pip. Paimkime pavyzdį:

Tarkime, kad norime įdiegti requestspopuliarią „Python“ HTTP biblioteką. Tai galime padaryti naudodami šią komandą.

 pip install requests 

Rezultatas

Užklausų rinkimas naudojant talpykloje esančius https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-ach.whl 3.0 naudojant rinkmeną .pythonhosted.org / package / bc / a9 / 01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8 / chardet-3.0.4-py2.py3-none-any.whl Urllib3 rinkimas! = 1.25.0 = https:! = 1.25.1, //files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl Collecting idna = 2.5 Naudojant talpyklą išsaugotą https://files /2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Collecting certificate> = 2017.4.17 Atsisiunčiama https: //files.pythonhosted.org / paketai / b9 / 63 / df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99 / certificatei-2019.11.28-py2.py3-none-any.whl (156kB) Diegiant surinktus paketus: chardet, urlli3i, idna 3.0.4 idna-2.8 užklausos-2.22.0 urllib3-1.25.7

Čia galime pamatyti, kad pipbuvo naudojamas su installkomanda, po kurios nurodomas norimo įdiegti paketo pavadinimas ( requests).

Visi kiti priklausomybės patinka chardet, urllib3ir certifireikia šį paketą taip pat įdiegta pip.

Nurodoma paketo versija

Kai pip installnaudojama minimalia forma, pipatsisiunčiama naujausia paketo versija.

Kartais tik konkreti versija yra suderinama su kitomis programomis. Taigi, paketo versiją galime apibrėžti tokiu būdu:

 „pip install“ užklausos == 2.21.0 

Čia mes įdiegėme 2.11.0 requestsbibliotekos versiją .

Įdiegtų paketų sąrašas su pip

pip listKomanda gali būti naudojama į sąrašą visus turimus paketus dabartinės Python aplinkoje.

 pip list 

Rezultatas

 Paketo versija ---------- ---------- certificatei 2019.11.28 chardet 3.0.4 idna 2.8 pip 19.3.1 prašymai 2.22.0 sąrankos įrankiai 45.0.0 urllib3 1.25.7 ratas 0.33 .6 

Informacija apie pakuotę su „pip show“

pip showKomandų rodoma informacija apie vieną ar daugiau paketų įdiegimui. Pažvelkime į pavyzdį:

 pip show requests 

Rezultatas

Vardas: užklausos Versija: 2.22.0 Santrauka: „Python“ HTTP žmonėms. Pagrindinis puslapis: http://python-requests.org Autorius: Kenneth Reitz Autoriaus el. Paštas: [email protected] Licencija: „Apache 2.0“ Vieta: c: users dell desktop venv lib site-package Reikalinga: sertifikatas, chardet, urllib3, idna Reikalingas:

Čia showkomanda rodo informaciją apie requestsbiblioteką. Pirmiau pateiktame išvestyje atkreipkite dėmesį į stulpelį Reikalingi ir Reikalingas .

Stulpelyje Reikalauja nurodoma, kokių priklausomybių requestsbiblioteka reikalauja. Ir Reikalinga po stulpelyje rodomas pakuočių, kurios reikalauja requests.

Pašalinti paketą su pip

Mes galime pašalinti paketą naudojant pipsu pip uninstallkomanda.

Tarkime, kad norime pašalinti requestsbiblioteką iš dabartinės „Python“ aplinkos. Tai galime padaryti taip:

 pip uninstall requests 

Rezultatas

Pašalinus užklausas-2.22.0: pašalintų: C: Python37 lib site-paketai užklausas-2.22.0.dist-info * C: Python37 lib site-paketai užklausos * Tęskite (y / n)? y Sėkmingai pašalintos užklausos-2.22.0

Kaip matome, requestspaketas pašalinamas po paskutinio raginimo.

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.

Norėdami sužinoti daugiau apie tai pip, apsilankykite: Python pip (oficialūs dokumentai)

Įdomios straipsniai...