Tässä opetusohjelmassa opitaan, kuinka pip: n avulla asennetaan ja hallitaan Python-paketteja.
Mikä on pip?
pip
on Pythonin vakiopaketinhallinta. Voimme pip
asentaa lisäpaketteja, joita ei ole saatavana Python-standardikirjastossa. Esimerkiksi,
pip install numpy
Jos olisimme asentaneet pip
järjestelmäämme, tämä komento olisi asentanut numpy
kirjaston.
Kuinka asentaa pip?
pip
tulee esiasennettuna Python-versioihin 3.4 tai vanhempia. Voimme tarkistaa, onko pip
asennettu, käyttämällä seuraavaa komentoa konsolissa:
pip --version
Jos järjestelmä pip
on jo käytettävissä, vastaava pip
versio näytetään, kuten:
pip 19.3.1, C: Python37 lib site-package pip (python 3.7)
Jos käytämme vanhempaa Python-versiota tai emme ole pip
asentaneet sitä jostain muusta syystä, noudata tässä linkissä kuvattuja vaiheita: pip asennus
Käyttämällä pip
pip
on komentoriviohjelma. Asennuksen jälkeen lisätään pip
komento, jota voidaan käyttää komentokehotteessa.
Pipin perussyntaksi on:
pip
Pakettien asentaminen pip: llä
Tavallisen Python-kirjaston lisäksi Python-yhteisö osallistuu laajaan määrään paketteja, jotka on räätälöity erilaisille kehyskehyksille, työkaluille ja kirjastoille.
Suurin osa näistä paketeista on virallisesti isännöity ja julkaistu Python Package Index (PyPI) -palvelussa. pip
avulla voimme ladata ja asentaa nämä paketit.
Peruspaketin asennus
install
Komennolla paketteja asentava avulla pip
. Otetaan esimerkki:
Oletetaan, että haluamme asentaa requests
suositun Pythonin HTTP-kirjaston. Voimme tehdä sen seuraavan komennon avulla.
pip install requests
Tuotos
Pyyntöjen kerääminen välimuistissa olevan https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-ach.http: // tiedostojen kerääminen // cd = .pythonhosted.org / package / bc / a9 / 01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8 / chardet-3.0.4-py2.py3-none-any.whl Urllib3: n kerääminen! = 1.25.0 = https:! = 1.25.1,! = 1.25.1, //files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl Collecting idna = 2.5 käyttäen välimuistissa olevaa https://fileä /2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Collecting certificate> = 2017.4.17 Ladataan https: //files.pythonhosted.org / paketit / b9 / 63 / df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99 / certificatei-2019.11.28-py2.py3-none-any.whl (156kB) Kerättyjen pakettien asentaminen: chardet, urlli3i, sertifikaatti-, Sertifikaatti-, kogu- 3.0.4 idna-2.8 pyynnöt-2.22.0 urllib3-1.25.7
Täällä voimme nähdä, että komentoa pip
on käytetty install
komennolla, jota seuraa asennettavan paketin nimi ( requests
).
Kaikki muut riippuvuudet haluavat chardet
, urllib3
ja certifi
pakollinen tässä paketissa on myös asennettu pip
.
Määritetään pakettiversio
Kun pip
install
sitä käytetään minimaalisessa muodossa, se pip
lataa paketin uusimman version.
Joskus vain tietty versio on yhteensopiva muiden ohjelmien kanssa. Joten voimme määritellä paketin version seuraavasti:
pip-asennuspyynnöt == 2.21.0
Tässä olemme asentaneet requests
kirjaston version 2.11.0 .
Luettelo asennetuista paketeista pip: llä
pip list
Komennolla voidaan luetella kaikki käytettävissä paketteja nykyisessä Python ympäristössä.
pip list
Tuotos
Pakettiversio ---------- ---------- Certifici 2019.11.28 chardet 3.0.4 idna 2.8 pip 19.3.1 pyytää 2.22.0 setuptools 45.0.0 urllib3 1.25.7 wheel 0.33 .6
Paketin tiedot pip show: lla
pip show
Komento näyttää tietoja yhdestä tai useammasta asennettu paketti. Katsotaanpa esimerkkiä:
pip show requests
Tuotos
Nimi: pyynnöt Versio: 2.22.0 Yhteenveto: Python HTTP for Humans. Kotisivu: http://python-requests.org Kirjoittaja: Kenneth Reitz Kirjoittaja-sähköposti: [email protected] Lisenssi: Apache 2.0 Sijainti: c: users dell desktop venv lib site-package Edellyttää: certificatei, chardet, urllib3, idna Pakollinen:
Tässä show
komento näyttää tietoja requests
kirjastosta. Huomaa Edellytys- ja Pakollinen- sarake yllä olevassa tuotoksessa.
Vaatii- sarake näyttää, mitä riippuvuuksia requests
kirjasto tarvitsee. Ja Pakollinen- sarake näyttää paketit, jotka vaativat requests
.
Paketin asennuksen poistaminen pip-ohjelmalla
Voimme poistaa paketin käyttäen pip
kanssa pip uninstall
komennolla.
Oletetaan, että haluamme poistaa requests
kirjaston nykyisestä Python-ympäristöstämme. Voimme tehdä sen seuraavalla tavalla:
pip uninstall requests
Tuotos
Poistetaan pyynnöt-2.22.0: Poistetaan: C: Python37 lib site-paketit request-2.22.0.dist-info * C: Python37 lib site-package pyynnöt * Jatka (y / n)? y Pyyntöjen poistaminen onnistuneesti - 2.22.0
Kuten näemme, requests
paketti poistetaan viimeisen kehotuksen jälkeen.
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.
Lisätietoja pip
: Python pip (virallinen dokumentaatio)