English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo tutorial, impareremo come utilizzare pip per installare e gestire i pacchetti software di Python.
pip è il gestore di pacchetti standard di Python. Possiamo usare pip per installare altri pacchetti software che non sono inclusi nella libreria standard di Python. Ad esempio,
pip install numpy
Se abbiamo installato pip sul nostro sistema, questo comando installerà la libreria numpy.
pip è preinstallato in versioni di Python 3.4 o precedenti. Possiamo verificare se pip è installato utilizzando il seguente comando nel prompt dei comandi:
pip --version
Se pip esiste già nel sistema, pip mostrerà la versione corrente, ad esempio:
pip 19.3.1 from C:\Python37\lib\site-packages\pip (python 3.7)
Se stai utilizzando una versione vecchia di Python o pip non è stato installato per altri motivi, segui i passaggi descritti nel seguente link:Installazione di pip
pip è un programma di riga di comando. Dopo l'installazione, aggiungi pip come un comando che può essere utilizzato insieme al prompt dei comandi.
La sintassi di base di pip è:
pip <pip arguments>
Oltre alle librerie Python standard, la comunità Python ha creato molti pacchetti personalizzati per vari framework di sviluppo, strumenti e librerie.
La maggior parte di questi pacchetti sono ufficialmente ospitati e pubblicati suL'indice dei pacchetti Python (PyPI)。pip ci permette di scaricare ed installare questi pacchetti.
Il comando install viene utilizzato per installare pacchetti software utilizzando pip. Facciamo un esempio:
Supponiamo di voler installare requests, una popolare libreria HTTP di Python. Possiamo agire con l'aiuto dei seguenti comandi.
pip install requests
Risultato di output
Collecting requests Using cached https://files.pythonhosted.org/packages/51/bd/23c926cd341ea6b7dd0b2a00aba99ae0f828be89d72b2190f27c11d4b7fb/requests-2.22.0-py2.py3-none-any.whl Collecting chardet<3.1.0,>=3.0.2 Using cached https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl Raccogliendo urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 Utilizzando la cache https://files.pythonhosted.org/packages/b4/40/a9837291310ee1ccc242ceb6ebfd9eb21539649f193a7c8c86ba15b98539/urllib3-1.25.7-py2.py3-none-any.whl Raccogliendo idna<2.9,>=2.5 Utilizzando la cache https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl Raccogliendo certifi>=2017.4.17 Scaricando https://files.pythonhosted.org/packages/b9/63/df50cac98ea0d5b006c55a399c3bf1db9da7b5a24de7890bc9cfd5dd9e99/certifi-2019.11.28-py2.py3-none-any.whl (156kB) Installando i pacchetti raccolti: chardet, urllib3, idna, certifi, requests Installato con successo certifi-2019.11.28 chardet-3.0.4 idna-2.8 requests-2.22.0 urllib3-1.25.7
Qui possiamo vedere che il comando install è stato utilizzato insieme a pip, seguito dal nome del pacchetto da installare (requests).
pip installa anche tutte le altre dipendenze necessarie per il pacchetto, come chardet, urllib3 e certifi.
Se si utilizza pip install nella forma minima, pip scaricherà l'ultima versione del pacchetto.
A volte, solo determinate versioni sono compatibili con altri programmi. Pertanto, possiamo definire la versione del pacchetto software nel modo seguente:
pip install requests==2.21.0
In questo caso, abbiamo installato la versione 2.21.0 della libreria requests.
Il comando pip list può essere utilizzato per elencare tutti i pacchetti disponibili nell'ambiente Python corrente.
pip list
Risultato di output
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
Il comando pip show mostra informazioni su uno o più pacchetti installati. Ecco un esempio:
pip show requests
Risultato di 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:\users\dell\desktop\venv\lib\site-packages Requires: certifi, chardet, urllib3, idna Required-by:
In questo caso, il comando show mostra informazioni sulla libreria requests. Attenzione alla seguente uscita:RequireseRequired-byColonna.
La colonna Requires mostra quali dipendenze necessita la libreria requests. E la colonna Required-by mostra i pacchetti che richiedono requests.
Possiamo disinstallare il pacchetto pip e utilizzare il comando pip uninstall.
Supponiamo di voler rimuovere la libreria requests dall'ambiente Python attuale. Possiamo farlo in questo modo:
pip uninstall requests
Risultato di output
Uninstalling requests-2.22.0: Would remove: C:\Python37\lib\site-packages\requests-2.22.0.dist-info\* C:\Python37\lib\site-packages\requests\* Procedere (s/n)? s Disinstallato con successo requests-2.22.0
Come visto, il pacchetto requests è stato rimosso dopo il prompt finale.
NotaAttenzione: anche dopo aver eliminato il pacchetto specificato, non verranno rimossi i pacchetti installati come dipendenze. In questo caso, le dipendenze della libreria requests (chardet, urllib3 e certifi) non verranno disinstallate.
Se si desidera anche rimuovere le dipendenze dei pacchetti, si può utilizzare il comando pip show per visualizzare i pacchetti installati e rimuoverli manualmente.
Un file che contiene tutti i nomi dei pacchetti può anche essere utilizzato per installare in batch i pacchetti Python.
Ecco un esempio:
Supponiamo di avere un filerequirements.txtche contiene le seguenti voci:
numpy Pillow pygame
Possiamo utilizzare un singolo comando per installare tutti questi pacchetti e le loro dipendenze con pip.
pip install -r requirements.txt
Risultato di output
Raccogliendo numpy Utilizzando https://files.pythonhosted.org/packages/a9/38/f6d6d8635d496d6b4ed5d8ca4b9f193d0edc59999c3a63779cbc38aa650f/numpy-1.18.1-cp37-cp37m-win_amd64.whl Raccogliendo Pillow Utilizzando https://files.pythonhosted.org/packages/88/6b/66f502b5ea615f69433ae1e23ec786b2cdadbe41a5cfb1e1fabb4f9c6ce9/Pillow-7.0.0-cp37-cp37m-win_amd64.whl Raccogliendo pygame Utilizzando https://files.pythonhosted.org/packages/ed/56/b63ab3724acff69f4080e54c4bc5f55d1fbdeeb19b92b70acf45e88a5908/pygame-1.9.6-cp37-cp37m-win_amd64.whl Installando i pacchetti raccolti: numpy, Pillow, pygame Installato con successo Pillow-7.0.0 numpy-1.18.1 pygame-1.9.6
Qui usiamo lo stesso comando install per pip.
Ma il parametro aggiuntivo -r specifica a pip che stiamo passando un file di esigenze invece del nome del pacchetto.
Invece di creare manualmente un file di esigenze, pip offre il comando freeze. Vediamo come usarlo.
Supponiamo che il nostro ambiente Python attuale abbia i seguenti pacchetti. Puoi visualizzarli con 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
Il comando freeze elenca i pacchetti Python non preinstallati.
pip freeze
Risultato di output
numpy==1.17.0 Pillow==6.1.0 pygame==1.9.6
Il comando pip freeze visualizza i pacchetti e le loro versioni nel formato del file di esigenze.
Di conseguenza, puoi utilizzare il seguente comando per reindirizzare l'output per creare un file di esigenze:
pip freeze > requirements.txt
Crea un nuovo filerequirements.txtFile. Puoi usarli in altri ambienti Python per installare versioni specifiche di pacchetti.
Il comando search viene utilizzato per cercare pacchetti nel prompt dei comandi. Ecco un esempio:
pip search pygame
Risultato di output
pygame-anisprite (1.0.0) - Sprite animati per PyGame! pygame-ai (0.1.2) - Pacchetto AI per Videogame per PyGame pygame-engine (0.0.6) - Motore di gioco semplice per pygame pygame-assets (0.1) - Gestore di asset per applicazioni Pygame pygame-gui (0.4.2) - Modulo GUI per pygame 2 pygame-spritesheet (0.2.0) - Estensione Python pygame che fornisce la classe SpriteSheet pygame-minesweeper (1.0) - Gioco del Miniera implementato in Python utilizzando pygame pygame-menu (2.1.0) - Menu per pygame, semplice, leggero e facile da usare pygame-plot (0.1) - Visualizzazione rapida dei dati utilizzando pygame con uno stile matplotlib pygame (1.9.6) - Sviluppo di gioco Python ...
Qui abbiamo cercato una libreria chiamata pygame. Mostra tutti gli altri pacchetti che corrispondono alla parola chiave. Questo comando aiuta a trovare pacchetti correlati.
Per ulteriori informazioni su pip, visitare:Python pip (documentazione ufficiale)