python - Ubuntu Python "No module named paramiko"

标签 python ubuntu import paramiko

所以我尝试在 Python 2.7 的 Ubuntu 上使用 Paramiko,但是导入 paramiko 导致了这个错误:

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

因为我是 Ubuntu 的新手,所以这个站点上的其他问题对我没有帮助。

以下是我用来检查内容的一些重要命令:

sudo pip install paramiko
pip install paramiko
sudo apt-get install python-paramiko

Paramiko 确实“安装”了。这些是我用来“安装”paramiko 的唯一命令。我是 Ubuntu 的新手,所以如果我需要运行更多命令,请交给我。

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']

在 python 解释器中,我运行了 help("modules") 并且 Paramiko 不在列表中。

两个 paramiko 文件夹位于 usr/local/lib/python2.7/dist-packages

最佳答案

简短版本:您混合了 Ubuntu 的 Python 打包版本 (/usr/bin/python) 和本地构建和安装的版本 (/usr/local/bin/python)。

长版:

  • 您使用 apt-get install python-paramiko 将 Ubuntu 的官方 Paramiko 软件包安装到 /usr/lib/python2.7/dist-packages
  • 您使用(我假设)Ubuntu 版本的 pip,它安装到 /usr/local/lib/python2.7/dist-packages。 (参见 here。)
  • 您使用了本地构建的 Python 版本,因为它是本地构建的,所以它使用 /usr/local/lib/python2.7 而不是 /usr/lib/python2.7 ,并且因为它没有 Debian/Ubuntu 定制,所以它不检查使用 dist-packages

解决方案:您应该能够将 /usr/local/lib/python2.7/dist-packages 添加到您的 /usr/local/bin/python' s sys.path,但由于您使用的是 Ubuntu,因此让 Ubuntu 为您完成工作是最简单的:

  • 使用/usr/bin/python 而不是本地版本。
  • 尽可能使用 Ubuntu 的软件包(即使用 apt-get 而不是 pip)。
  • 其余的使用 virtualenv(以保持 Ubuntu 打包和个人安装的模块之间的清晰分离)。

我什至会卸载本地版本的 Python 并删除 /usr/local/lib/python2.7,以确保不会再出现不匹配的情况。如果你不想那么激烈,那么你可以编辑你的 $PATH 把 /usr/bin 放在 /usr/local/bin 之前来运行系统版本默认情况下使用 Python。

关于python - Ubuntu Python "No module named paramiko",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28991319/

相关文章:

javascript - 将 javascript 字符串设置为从 Django 变量传播的值时如何转义引号?

python-3.x - Numpy 1.11 未安装在 virtualenv @ Ubuntu Studio 中

python-3.x - 谷歌应用引擎 - 应用因长期部署而变得不健康

c++ - 将 blender 模型导入 DirectX 11.2 C++ 应用程序

RStudio 全局设置(选项)导出/导入

php - 尝试通过php执行python命令但权限错误

python - Python 中多个重复的 lambda 函数的内存成本是多少?

python - 如何在 INSTALLED_APPS 中包含必备应用

ruby -/usr/bin/ruby 与 rvm

Python模块之间的依赖关系