User Tools

Site Tools


doc:appunti:prog:python_pip

This is an old revision of the document!


Installazione librerie Python con PIP

PIP consente di installare automaticamente librerie aggiuntive Python qualora non siano presenti come pacchetto fornito dalla distribuzione (es. Debian GNU/Linux), oppure se è necessario una versione più aggiornata. PIP si preoccupa di:

  • Scaricare l'archivio dal repository.
  • Scaricare le eventuali dipendenze (altre librerie).
  • Effettuare la compilazione, se necessario.
  • Installare il necessario nelle directory di sistema o utente.

Debian consente di far convivere versioni di Python diverse sullo stesso sistema, ad esempio Debian 9 Stretch fornisce sia Python 2.7.13 (predefinito) che Python 3.5.3 (eseguibile lanciando il comando python3).

Le librerie aggiuntive vanno installate per la versione di Python che si desidera, lanciando pip oppure pip3. Tali comandi sono forniti rispettivamente dai pacchetti:

  • python-pip
  • python3-pip

Esempio libreria openpyxl

Su Debian 9 Stretch esiste il pacchetto python-openpyxl 2.3.0. Se si desidera una versione più recente è necessario anzitutto disinstallare il pacchetto Debian, altrimenti PIP si rifiuta di procedere con l'installazione:

pip install openpyxl
Requirement already satisfied: openpyxl in /usr/lib/python2.7/dist-packages
Requirement already satisfied: jdcal in /usr/lib/python2.7/dist-packages (from openpyxl)

Quindi si rimuove il pacchetto Debian:

dpkg --purge python-openpyxl

A questo punto si può fare l'installazione con PIP:

pip install openpyxl

Avendo eseguito l'operazione con l'utente root, l'installazione sarà system wide, cioè disponibile a tutti gli utenti di sistema. Infatti i file sono stati installati in /usr/local/lib/python2.7/dist-packages/.

È consigliabile salvare localmente gli archivi di installazione, qualora il repository venga a mancare. Per scaricarli senza installarli eseguire:

pip download openpyxl

Nel nostro caso sono stati scaricati tre archivi, uno della libreria vera e propria e due per dipendenza:

  • openpyxl-2.6.4.tar.gz
  • et_xmlfile-1.0.1.tar.gz
  • jdcal-1.4.1-py2.py3-none-any.whl

Questi archivi possono essere installati da file locale (invece che scaricandoli dal repository) con il semplice:

pip install et_xmlfile-1.0.1.tar.gz
pip install jdcal-1.4.1-py2.py3-none-any.whl
pip install openpyxl-2.6.4.tar.gz
doc/appunti/prog/python_pip.1571818961.txt.gz · Last modified: 2019/10/23 08:22 by niccolo