Python-pip

Tässä opetusohjelmassa opitaan, kuinka pip: n avulla asennetaan ja hallitaan Python-paketteja.

Mikä on pip?

pipon Pythonin vakiopaketinhallinta. Voimme pipasentaa lisäpaketteja, joita ei ole saatavana Python-standardikirjastossa. Esimerkiksi,

 pip install numpy 

Jos olisimme asentaneet pipjärjestelmäämme, tämä komento olisi asentanut numpykirjaston.

Kuinka asentaa pip?

piptulee esiasennettuna Python-versioihin 3.4 tai vanhempia. Voimme tarkistaa, onko pipasennettu, käyttämällä seuraavaa komentoa konsolissa:

 pip --version 

Jos järjestelmä pipon jo käytettävissä, vastaava pipversio 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 pipasentaneet sitä jostain muusta syystä, noudata tässä linkissä kuvattuja vaiheita: pip asennus

Käyttämällä pip

pipon komentoriviohjelma. Asennuksen jälkeen lisätään pipkomento, 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. pipavulla voimme ladata ja asentaa nämä paketit.

Peruspaketin asennus

installKomennolla paketteja asentava avulla pip. Otetaan esimerkki:

Oletetaan, että haluamme asentaa requestssuositun 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 pipon käytetty installkomennolla, jota seuraa asennettavan paketin nimi ( requests).

Kaikki muut riippuvuudet haluavat chardet, urllib3ja certifipakollinen tässä paketissa on myös asennettu pip.

Määritetään pakettiversio

Kun pip installsitä käytetään minimaalisessa muodossa, se piplataa 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 requestskirjaston version 2.11.0 .

Luettelo asennetuista paketeista pip: llä

pip listKomennolla 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 showKomento 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ä showkomento näyttää tietoja requestskirjastosta. Huomaa Edellytys- ja Pakollinen- sarake yllä olevassa tuotoksessa.

Vaatii- sarake näyttää, mitä riippuvuuksia requestskirjasto tarvitsee. Ja Pakollinen- sarake näyttää paketit, jotka vaativat requests.

Paketin asennuksen poistaminen pip-ohjelmalla

Voimme poistaa paketin käyttäen pipkanssa pip uninstallkomennolla.

Oletetaan, että haluamme poistaa requestskirjaston 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, requestspaketti 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)

Mielenkiintoisia artikkeleita...