50 votes

Comment installer pip pour Python 3.6 sur Ubuntu 16.10 ?

Je voudrais tout d'abord souligner que cette question peut sembler faire double emploi, mais ce n'est pas le cas. Toutes les questions que j'ai vues ici sur Ask Ubuntu concernaient pip pour Python 3 et je parle de Python 3.6. Les étapes utilisées à l'époque ne fonctionnent pas pour Python 3.6.

  1. J'ai obtenu une image Ubuntu 16.10 claire à partir de la page magasin officiel de Docker .
  2. Exécuter apt-get update
  3. Exécuter apt-get install python3.6
  4. Exécuter apt-get install python3-pip
  5. Exécuter pip3 install requests bs4
  6. Exécuter python3.6 script.py

Obtenu ModuleNotFoundError ci-dessous :

 Traceback (most recent call last):
    File "script.py", line 6, in <module>
     import requests
 ModuleNotFoundError: No module named 'requests'

Python et pip que j'ai dans la machine :

python3
python3.5
python3.5m
python3.6
python3m
python3-config
python3.5-config
python3.5m-config
python3.6m
python3m-config  

pip
pip3
pip3.5

56voto

Asclepius Points 892

Cette réponse suppose que vous ayez python3.6 installés. Pour les python3.7 , remplacer 3.6 avec 3.7 . Pour python3.8 , remplacer 3.6 avec 3.8 mais il peut aussi exiger d'abord le python3.8-distutils l'emballage.

Installation avec sudo

En ce qui concerne en installant pip , en utilisant curl (au lieu de wget ) évite d'écrire le fichier sur le disque.

curl https://bootstrap.pypa.io/get-pip.py | sudo -H python3.6

Les -H est manifestement nécessaire avec les sudo afin d'éviter des erreurs telles que celles qui suivent lors de l'installation de pip pour un interpréteur Python mis à jour :

Le répertoire '/home/someuser/.cache/pip/http' ou son répertoire parent n'appartient pas à l'utilisateur actuel et le cache a été désactivé. Veuillez vérifier les autorisations et le propriétaire de ce répertoire. Si vous exécutez pip avec sudo, vous pouvez utiliser le drapeau -H de sudo.

T '/home/someuser/.cache/pip' ou son répertoire parent n'est pas la propriété du l'utilisateur actuel et les roues de mise en cache ont été désactivées. permissions et le propriétaire de ce répertoire. Si vous exécutez pip avec sudo, vous pouvez utiliser l'option -H de sudo.

Installation sans sudo

curl https://bootstrap.pypa.io/get-pip.py | python3.6 - --user

Cela peut parfois donner lieu à un avertissement tel que :

ATTENTION : La roue script est installée dans '/home/ubuntu/.local/bin' qui n'est pas dans PATH. Pensez à ajouter ce répertoire à PATH ou, si si vous préférez supprimer cet avertissement, utilisez --no-warn-script-location.

Vérification

Après cela, pip , pip3 et pip3.6 On peut s'attendre à ce qu'ils pointent tous vers la même cible :

$ (pip -V && pip3 -V && pip3.6 -V) | uniq
pip 18.0 from /usr/local/lib/python3.6/dist-packages (python 3.6)

Bien entendu, vous pouvez également utiliser python3.6 -m pip également.

$ python3.6 -m pip -V
pip 18.0 from /usr/local/lib/python3.6/dist-packages (python 3.6)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X