Python pip

În acest tutorial, vom învăța cum să folosim pip pentru a instala și gestiona pachetele Python.

Ce este pip?

pipeste managerul de pachete standard pentru Python. Putem folosi pippentru a instala pachete suplimentare care nu sunt disponibile în biblioteca standard Python. De exemplu,

 pip install numpy 

Dacă am fi instalat pippe sistemul nostru, această comandă ar fi instalat numpybiblioteca.

Cum se instalează pip?

pipvine preinstalat pe versiunile Python 3.4 sau mai vechi. Putem verifica dacă pipeste instalat folosind următoarea comandă din consolă:

 pip --version 

Dacă pipeste deja disponibil în sistem, pipse afișează versiunea respectivă , cum ar fi:

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

Dacă folosim o versiune mai veche de Python sau nu am pipinstalat din alt motiv, urmați pașii descriși în acest link: instalare pip

Folosind pip

pipeste un program de linie de comandă. După instalare, pipse adaugă o comandă care poate fi utilizată cu promptul de comandă.

Sintaxa de bază a pip este:

 pip 

Instalarea pachetelor cu pip

În afară de biblioteca standard Python, comunitatea Python contribuie la un număr extins de pachete adaptate pentru diverse cadre de dezvoltare, instrumente și biblioteci.

Majoritatea acestor pachete sunt găzduite oficial și publicate în Python Package Index (PyPI). pipne permite să descărcăm și să instalăm aceste pachete.

Instalarea de bază a pachetului

installComanda utilizată pentru a instala pachete folosind pip. Să luăm un exemplu:

Să presupunem că vrem să instalăm requestso bibliotecă HTTP populară pentru Python. O putem face cu ajutorul următoarei comenzi.

 pip install requests 

Ieșire

Colectarea cererilor Utilizarea cache https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl // Folosirea chardet https: .pythonhosted.org / packages / bc / a9 / 01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8 / chardet-3.0.4-py2.py3-none-any.whl Colectarea urllib3! = 1.25.0,! = 1.25.1 = https: //files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl Colectarea idna = 2.5 Utilizarea cache-ului https://f14/py /2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Colectarea certificatelor = = 2017.4.17 Descărcarea https: //files.pythonhosted.org / packages / b9 / 63 / df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99 / certifi-2019.11.28-py2.py3-none-any.whl (156kB) Instalarea pachetelor colectate: chardet, urllib3, cert.11, 2019, idna, 3.0.4 idna-2.8 solicitări-2.22.0 urllib3-1.25.7

Aici, putem vedea că pipa fost folosit cu installcomanda urmată de numele pachetului pe care dorim să îl instalăm ( requests).

Toate celelalte dependențe place chardet, urllib3și este certifinecesar pentru acest pachet sunt , de asemenea , instalate de către pip.

Specificarea versiunii pachetului

Când pip installeste utilizat în forma sa minimă, pipdescarcă cea mai recentă versiune a pachetului.

Uneori, doar o versiune specifică este compatibilă cu alte programe. Deci, putem defini versiunea pachetului în felul următor:

 cereri de instalare pip == 2.21.0 

Aici, am instalat versiunea 2.11.0 a requestsbibliotecii.

Listarea pachetelor instalate cu pip

pip listComanda poate fi folosit pentru a lista toate pachetele disponibile în mediul Python curent.

 pip list 

Ieșire

 Versiune pachet ---------- ---------- certifi 2019.11.28 chardet 3.0.4 idna 2.8 pip 19.3.1 solicitări 2.22.0 instrumente de configurare 45.0.0 urllib3 1.25.7 roată 0.33 .6 

Informații despre pachet cu spectacol pip

pip showComandă afișează informații despre una sau mai multe pachete instalate. Să vedem un exemplu:

 pip show requests 

Ieșire

Nume: solicitări Versiune: 2.22.0 Rezumat: Python HTTP pentru oameni. Pagina principală: http://python-requests.org Autor: Kenneth Reitz Autor-e-mail: [email protected] Licență: Apache 2.0 Locație: c: utilizatori dell desktop venv lib site-packages Necesită: certifi, chardet, urllib3, idna Obligatoriu:

Aici, showcomanda afișează informații despre requestsbibliotecă. Observați Necesita și Necesar-cu coloana din producția de mai sus.

Coloana Necesară arată ce dependențe requestsnecesită biblioteca. Și, Coloana obligatoriu arată pachetele care necesită requests.

Dezinstalarea unui pachet cu pip

Putem dezinstala un pachet folosind pipcu pip uninstallcomanda.

Să presupunem că vrem să eliminăm requestsbiblioteca din mediul actual Python. O putem face în felul următor:

 pip uninstall requests 

Ieșire

Dezinstalarea cererilor-2.22.0: S-ar elimina: C: Python37 lib site-packages requests-2.22.0.dist-info * C: Python37 lib site-packages requests * Continuă (y / n)? y Solicitări dezinstalate cu succes-2.22.0

După cum putem vedea, requestspachetul este eliminat după solicitarea finală.

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.

Pentru a afla mai multe despre pip, vizitați: Python pip (documentație oficială)

Articole interesante...