Python pip

Ebben az oktatóanyagban megtanuljuk, hogyan kell a pip használatával telepíteni és kezelni a Python csomagokat.

Mi az a pip?

pipa Python szabványos csomagkezelője. pipTovábbi csomagok telepítésére használhatjuk , amelyek nem érhetők el a Python szabványos könyvtárában. Például,

 pip install numpy 

Ha telepítettük pipvolna a rendszerünkre, ez a parancs telepítette volna a numpykönyvtárat.

Hogyan kell telepíteni a pip-et?

pipelőre telepítve van a Python 3.4-es vagy régebbi verzióira. A pipkonzolon a következő paranccsal ellenőrizhetjük, hogy telepítve van-e:

 pip --version 

Ha pipmár elérhető a rendszerben, akkor a megfelelő pipverzió jelenik meg, például:

 pip 19.3.1 a C-től: Python37 lib site-package pip (python 3.7) 

Ha a Python régebbi verzióját használjuk, vagy pipvalamilyen más okból nem telepítettük, kövesse az ezen a linken leírt lépéseket: pip telepítés

A pip használatával

pipegy parancssori program. A telepítés után egy pipparancs kerül hozzáadásra, amely a parancssorral használható.

A pip alapvető szintaxisa:

 pip 

Csomagok telepítése pip-szel

A Python közösség a szokásos Python könyvtáron kívül nagyszámú csomaggal járul hozzá, különféle fejlesztési keretekhez, eszközökhöz és könyvtárakhoz igazítva.

A legtöbb ilyen csomagot hivatalosan a Python Package Index (PyPI) tárolja és teszi közzé. piplehetővé teszi számunkra ezeknek a csomagoknak a letöltését és telepítését.

Alapcsomag telepítés

A installcsomag használatával telepített parancs a pip. Vegyünk egy példát:

Tegyük fel, hogy requestsegy népszerű HTTP könyvtárat szeretnénk telepíteni a Python számára. Megtehetjük a következő parancs segítségével.

 pip install requests 

Kimenet

Kérelmek gyűjtése a gyorsítótárban tárolt https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-ach.whl 3.0 fájlok gyűjtése .pythonhosted.org / package / bc / a9 / 01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8 / chardet-3.0.4-py2.py3-none-any.whl Urllib3 gyűjtése! = 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 Idna összegyűjtése = 2.5 A cache-el kezelt https://files.py használatával /2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Certifici gyűjtése> = 2017.4.17 https: //files.pythonhosted letöltése.org / package / b9 / 63 / df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99 / certificatei-2019.11.28-py2.py3-none-any.whl (156kB) Az összegyűjtött csomagok telepítése: chardet, urliba2 3.0.4 idna-2.8 kérések-2.22.0 urllib3-1.25.7

Itt láthatjuk, hogy a parancsot piphasználtuk a installparanccsal, amelyet a telepíteni kívánt csomag neve ( requests) követett .

Az összes többi chardet, a csomaghoz szükséges urllib3és certifiszükséges függőséget szintén a pip.

A csomag verziójának megadása

Ha pip installminimális formában használják, pipletölti a csomag legújabb verzióját.

Néha csak egy adott verzió kompatibilis más programokkal. Tehát a következő módon definiálhatjuk a csomag verzióját:

 pip telepítési kérelmek == 2.21.0 

Itt telepítettük a requestskönyvtár 2.11.0 verzióját .

Telepített csomagok felsorolása a pip segítségével

A pip listparanccsal fel lehet sorolni az összes rendelkezésre álló csomagot az aktuális Python környezetben.

 pip list 

Kimenet

 Package Version ---------- ---------- certifi 2019.11.28 chardet 3.0.4 idna 2.8 pip 19.3.1 requests 2.22.0 setuptools 45.0.0 urllib3 1.25.7 wheel 0.33.6 

Package Information with pip show

The pip show command displays information about one or more installed packages. Let's look at an example:

 pip show requests 

Output

 Name: requests Version: 2.22.0 Summary: Python HTTP for Humans. Home-page: http://python-requests.org Author: Kenneth Reitz Author-email: [email protected] License: Apache 2.0 Location: c:usersdelldesktopvenvlibsite-packages Requires: certifi, chardet, urllib3, idna Required-by: 

Here, the show command displays information about the requests library. Notice the Requires and Required-by column in the above output.

Requires column shows which dependencies the requests library requires. And, Required-by column shows the packages that require requests.

Uninstalling a Package with pip

We can uninstall a package by using pip with the pip uninstall command.

Suppose we want to remove the requests library from our current Python environment. We can do it in the following way:

 pip uninstall requests 

Output

 Uninstalling requests-2.22.0: Would remove: C:Python37libsite-packagesequests-2.22.0.dist-info* C:Python37libsite-packagesequests* Proceed (y/n)? y Successfully uninstalled requests-2.22.0 

As we can see, the requests package is removed after the final prompt.

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.

További információért piplátogasson el a következő címre: Python pip (hivatalos dokumentáció)

érdekes cikkek...