web-dev-qa-db-fra.com

Après l'installation de PIP --upgrade, Dpkg répertorie toujours les anciens packages python

J'ai récemment mis à jour tous les outils d'analyse de données python en utilisant pip. Quand je le fais

dpkg -l |grep python

Je vois les anciens numéros de version du logiciel que je viens de mettre à jour via pip.

Comment puis-je m'assurer que la liste dpkg rapporte les versions correctes? (je suppose que dpkg -l doit être correct)

Par exemple, j'ai mis à niveau ipython vers la version 1.0.0 en utilisant pip; cependant, dpkg rapporte la version 0.13.2-1 ~ ubuntu12.04.1

2

Ce n'est pas la même chose si vous utilisez dpkg au lieu de pip. Le premier est un gestionnaire de paquets pour les systèmes basés sur Debian et fournit des moyens pour gérer les paquets et installer les paquets à partir des référentiels créés par les équipes de paquets. PIP gère Python ne conditionne que les packages et les installe depuis la fromagerie PyPI .

Les deux méthodes diffèrent des versions qu'ils installent avec PIP en installant toujours la dernière version du package.

Une méthode pour répertorier tous les packages installés consiste à installer et à utiliser jaune : Sudo pip install yolk puis lancez yolk -l pour répertorier tous les packages.

D'autres méthodes sont mentionnées à la question SE suivante:

Ces deux questions parlent également de la différence d'apt-get - pip pour l'installation des packages Python:

5
Stef K

Vous envisagez deux gestionnaires de packages différents. DPKG/APT s'installe dans /usr/lib/python2.7/dist-packages/ (note dist - il est fourni avec la distribution) et pip/easy_install installe dans d'autres chemins Python.

Les deux gestionnaires de packages sont indépendants. Votre application Python utilisera d'abord la version du package dans le chemin Python. Vérifiez votre chemin Python avec:

import sys
print sys.path
2
gertvdijk