Šioje pamokoje sužinosime, kaip naudoti „pip“ norint įdiegti ir valdyti „Python“ paketus.
Kas yra pipas?
pip
yra standartinis „Python“ paketų tvarkytuvas. Mes galime naudoti pip
papildomiems paketams, kurių nėra „Python“ standartinėje bibliotekoje, įdiegti. Pavyzdžiui,
pip install numpy
Jei būtume įdiegę pip
savo sistemoje, ši komanda būtų įdiegusi numpy
biblioteką.
Kaip įdiegti „pip“?
pip
iš anksto įdiegta į „Python“ 3.4 ar senesnes versijas. Mes galime patikrinti, ar pip
įdiegta, naudodami šią komandą konsolėje:
pip --version
Jei pip
sistemoje jau pip
yra, rodoma atitinkama versija, pvz .:
pip 19.3.1 iš C: Python37 lib site-package pip (python 3.7)
Jei naudojame senesnę „Python“ versiją arba pip
neįdiegėme dėl kokios nors kitos priežasties, atlikite veiksmus, aprašytus šioje nuorodoje: „pip install“
Naudojant pip
pip
yra komandinės eilutės programa. Įdiegus, pridedama pip
komanda, 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). pip
leidžia mums atsisiųsti ir įdiegti šiuos paketus.
Pagrindinis paketo diegimas
install
Komanda naudojama įdiegti paketus naudojant pip
. Paimkime pavyzdį:
Tarkime, kad norime įdiegti requests
populiarią „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 pip
buvo naudojamas su install
komanda, po kurios nurodomas norimo įdiegti paketo pavadinimas ( requests
).
Visi kiti priklausomybės patinka chardet
, urllib3
ir certifi
reikia šį paketą taip pat įdiegta pip
.
Nurodoma paketo versija
Kai pip
install
naudojama minimalia forma, pip
atsisiunč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 requests
bibliotekos versiją .
Įdiegtų paketų sąrašas su pip
pip list
Komanda 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 show
Komandų 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 show
komanda rodo informaciją apie requests
biblioteką. Pirmiau pateiktame išvestyje atkreipkite dėmesį į stulpelį Reikalingi ir Reikalingas .
Stulpelyje Reikalauja nurodoma, kokių priklausomybių requests
biblioteka reikalauja. Ir Reikalinga po stulpelyje rodomas pakuočių, kurios reikalauja requests
.
Pašalinti paketą su pip
Mes galime pašalinti paketą naudojant pip
su pip uninstall
komanda.
Tarkime, kad norime pašalinti requests
biblioteką 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, requests
paketas 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)