Pip Installs Packages in sigla pip (o pip3 dalla versione 3 di Python) è uno strumento a linea di comando fondamentale nell'ecosistema Python. La sua funzione primaria è quella di gestire l'installazione, l'aggiornamento e la rimozione di pacchetti Python, ovvero di quelle librerie e moduli aggiuntivi che estendono le funzionalità di base del linguaggio.

È lo strumento raccomandato dalla Python Software Foundation per l'installazione delle applicazioni Python e delle relative dipendenze. Pip accede al Python Package Index un repository di pacchetti software scritti in Python dove gli sviluppatori possono cercare, scaricare e condividere pacchetti. Pip può anche essere configurato per connettersi ad altri repository (locali o remoti), a condizione che siano conformi alla Python Enhancement Proposal 503 che definisce un'interfaccia semplice e standardizzata per i repository di pacchetti.

La maggior parte delle distribuzioni Python hanno pip preinstallato. Python 2.7.9 e versioni successive (per quanto riguarda la serie python2) e Python 3.4 e versioni successive includono pip per impostazione predefinita.

Storia Pip è stato introdotto come pyinstall nel 2008 da Ian Bicking, creatore di virtualenv, quale alternativa a easy_install. Il nome "pip" è stato scelto tra una serie di suggerimenti ricevuti dal creatore stesso attraverso il suo blog. "Pip" è l'acronimo ricorsivo per "Pip Installs Packages".

Nel 2011, è stata creata la Python Packaging Authority (PyPA) da Bicking, guidata da Carl Meyer, Brian Rosner e Jannis Leidel.

L'obiettivo della PyPA è quello di supervisionare e migliorare gli strumenti e le infrastrutture di packaging di Python. Tra gli scopi della PyPa ci sono quelli di standardizzare la distribuzione e l'installazione di pacchetti Python anche attraverso le Proposte di Miglioramento di Python (PEP) che regolano i formati di packaging e le API. La Python Packaging Authority (PyPA) sviluppa e mantiene strumenti essenziali per il packaging, come pip, setuptools e il formato wheel. Con il rilascio della versione 6.0 di pip (22 dicembre 2014) è stato modificato il processo di denominazione della versione passando dalla numerazione in stile X.Y.1 alla più semplice X.Y. La nuova numerazione rende più evidente quando un aggiornamento introduce nuove funzionalità o comporta cambiamenti significativi.

Interfaccia a riga di comando

L'interfaccia della riga di comando di pip consente l'installazione di pacchetti software Python attraversi uk comando: pip install nome-pacchetto

Gli utenti possono rimuovere il pacchetto con il comando: pip uninstall nome-pacchetto

pip consente di creare un elenco tutti i pacchetti Python e delle loro versioni specifiche necessari per un progetto. Una sorta di "ricetta" per ricostruire esattamente lo stesso ambiente Python su un altro computer o in un ambiente virtuale. Questo elenco prende il nome di 'requirements'.

Tale file consente di ricreare rapidamente e in modo efficiente l'intero ambiente di pacchetti Python su un altro computer o in un ambiente virtuale.

La generazione di tale file avviene tramite il comando: pip install -r requirements.txt

Per installare un pacchetto per una versione specifica di Python, pip fornisce il seguente comando, dove ${version} viene sostituito da 2, 3, 3.4, ecc.: pip${version} install nome-pacchetto

Utilizzo Pip consente l'installazione locale di progetti definiti dall'utente con l'uso di un file denominato . Questo metodo di installazione richiede che il progetto Python abbia la seguente struttura di file: esempio_progetto/ ├── progetto_di_esempio/ Pacchetto Python con codice sorgente. | ├── __init__.py Imposta la cartella come pacchetto. | └── esempio.py Modulo di esempio. └── README.md README con informazioni sul progetto. All'interno di questa struttura è possibile aggiungere un file setup.py nella directory principale del progetto (progetto_di_esempio in questo caso) con il seguente contenuto:

from setuptools import setup, find_packages setup( name='esempio', # Nome del pacchetto. Questo sarà usato quando il progetto sarà importato come pacchetto. version='0.1.0', packages=find_packages(include=['progetto_di_esempio', 'progetto_di_esempio.*']) # Pip installerà automaticamente le dipendenze fornite qui. )

Dopodiché, sarà possibile installare questo progetto personalizzato eseguendo il seguente comando dalla directory radice del progetto: pip install -e .

Repository personalizzato Oltre al repository PyPI è possibile gestire repository personalizzati. Tali repository possono essere ubicati su un URL HTTP(s) o in una posizione del file system.

È possibile specificare un repository personalizzato utilizzando l'opzione -i o index-url, in questo modo: pip install -i https://repository_personale/esempio <package name> ; oppure con un file system: pip install -i /path/tuo/repository_personale/esempio <package name> .

Note

Voci correlate Conda (gestore pacchetti) per la distribuzione Anaconda PyPM - Gestore di pacchetti proprietario di ActiveState

Collegamenti esterni

Categoria:Software con licenza MIT Categoria:Software libero in Python