web-dev-qa-db-fra.com

Ubuntu Python "Pas de module nommé paramiko"

J'essaie donc d'utiliser Paramiko sur Ubuntu avec Python 2.7, mais importer paramiko provoque cette erreur:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named paramiko

Les autres questions sur ce site ne m'aident pas puisque je suis nouveau sur Ubuntu.

Voici quelques commandes importantes que j'ai exécutées pour vérifier des choses:

Sudo pip install paramiko
pip install paramiko
Sudo apt-get install python-paramiko

Paramiko a "installé". Ce sont les seules commandes que j'ai utilisées pour "installer" paramiko. Je suis nouveau sur Ubuntu, donc si j'ai besoin d'exécuter plus de commandes, posez-les sur moi.

which python
/usr/local/bin/python

python -c "from pprint import pprint; import sys; pprint(sys.path);"
['',
 '/usr/local/lib/python27.Zip',
 '/usr/local/lib/python2.7',
 '/usr/local/lib/python2.7/plat-linux2',
 '/usr/local/lib/python2.7/lib-tk',
 '/usr/local/lib/python2.7/lib-old',
 '/usr/local/lib/python2.7/lib-dynload',
 '/usr/local/lib/python2.7/site-packages']

Dans l'interpréteur python, j'ai exécuté help("modules") et Paramiko n'est pas dans la liste.

deux dossiers paramiko sont situés dans usr/local/lib/python2.7/dist-packages.

4
Delliardo

Version courte: vous mélangez la version fournie de Ubuntu de Python (/usr/bin/python) et une version construite et installée localement (/usr/local/bin/python).

Version longue:

  • Vous avez utilisé apt-get install python-paramiko pour installer le package officiel Paramiko d'Ubuntu sur /usr/lib/python2.7/dist-packages.
  • Vous avez utilisé (je suppose) la version pip d'Ubuntu, qui s'installe sur /usr/local/lib/python2.7/dist-packages. (Voir ici .)
  • Vous avez utilisé une version construite localement de Python. Comme il est construit localement, il utilise /usr/local/lib/python2.7 au lieu de /usr/lib/python2.7 et, comme il n'a pas de personnalisations Debian/Ubuntu, il ne coche pas l'utilisation de dist-packages.

Solution: Vous devriez pouvoir ajouter /usr/local/lib/python2.7/dist-packages au /usr/local/bin/python de votre sys.path, mais puisque vous utilisez Ubuntu, il est plus facile de laisser Ubuntu faire le travail pour vous:

  • Utilisez/usr/bin/python au lieu d’une version locale.
  • Utilisez les paquets Ubuntu autant que possible (c'est-à-dire, utilisez apt-get au lieu de pip).
  • Utilisez virtualenv pour le reste (pour garder une séparation nette entre les modules emballés par Ubuntu et ceux installés personnellement).

J'irais même jusqu'à désinstaller la version locale de Python et supprimer /usr/local/lib/python2.7 pour éviter toute disparité. Si vous ne voulez pas être aussi radical, vous pouvez éditer votre $ PATH pour mettre /usr/bin avant /usr/local/bin afin d'exécuter la version système de Python par défaut.

10
Josh Kelley

Essayez de télécharger le fichier Zip à partir de https://github.com/paramiko/paramiko et d’exécuter cette commande dans le répertoire décompressé: 

python setup.py install
4
thebenraskin

Il existe deux autres méthodes pour ajouter des modules en python:

La première :

  1. Téléchargez le package.
  2. Créez un répertoire et collez le paquet dans celui-ci.
  3. Tapez dans le terminal:
  4. export PYTHONPATH = $ PYTHONPATH: chemin_du_package

La deuxième :

  1. interprète ouvert python:
  2. import sys
  3. sys.path.insert(0, "path_of_package")
0
khelili miliana

Aussi, faites attention à la version de python, si l'erreur a été signalée par python3, installez le paramiko de python3.

0
ddwolf

Essayez d'installer uniquement à l'aide de commandes.

  1. Téléchargez le paquet paramiko depuis git en utilisant cette commande: git clone https://github.com/paramiko/paramiko.git
  2. Accédez au répertoire décompressé et exécutez export PYTHONPATH=$PYTHONPATH:<path_to_paramiko>
  3. Si vous trouvez un paquet libffi introuvable, exécutez la commande suivante: Sudo apt-get install libffi6 libffi-dev et si vous n'avez pas correctement installé les fichiers d'en-tête et les bibliothèques statiques pour python dev, exécutez la commande suivante: Sudo apt-get install python-dev

Prendre plaisir :)

0
user8598233