【问题标题】:Paths for pip and python out of sync?pip 和 python 的路径不同步?
【发布时间】:2018-05-22 19:59:39
【问题描述】:

我有一个使用请求模块的应用程序。我已经安装了这个模块,但是当我尝试运行我的应用程序时,它会抛出错误:

    import requests
ImportError: No module named requests

当我运行 pip list 时,我看到一个请求条目:

...
pytz (2017.2)
requests (2.18.4)
scipy (0.19.1)
...

所以我知道它已经安装了。

我确认 pip 和 python 都是 2.7 版本:

➜  pip --version
pip 9.0.1 from /usr/local/lib/python2.7/site-packages (python 2.7)
➜  python --version
Python 2.7.10

当我查看 pip 和 python 的路径时,它们看起来是不同的:

➜  which pip
/usr/local/bin/pip
➜  which python
/usr/bin/python

我怀疑这些不匹配的路径是我的问题的原因是否正确?

什么会导致这种情况发生?我原以为只要 pip/python 都是 2.7,它们就可以很好地协同工作。

我该如何解决这个问题?

这似乎已经解决了,但是在谷歌搜索并查看创建此帖子时提出的问题后,我没有遇到一个帖子有一个明确的解决方案,该解决方案涵盖了如何发生这种情况以及如何发生修复它。

【问题讨论】:

  • 请出示head -1 $(which pip)
  • @phd - 返回:#!/usr/bin/python
  • 没关系,您的pip 使用相同的python,无需“同步”它们。您的应用程序是否使用相同的 python?下一步:比较pip show requests | grep Locationpython -c "import sys; print(sys.path)";是第二个列表中的第一个位置吗? python -c "import requests; print('Ok')"呢?

标签: python python-2.7 pip


【解决方案1】:

我建议尝试以下一些选项:

1) 确保您有一个指向当前 pip 目录所在位置的环境变量。 2) 将 pip 文件夹移动到其他 python 包所在的目录。 3)卸载然后重新安装 pip(到路径上的不同位置)。 4)卸载python然后重新安装python。我建议通过 conda 或 miniconda 安装它,以确保您将所有内容下载到同一个地方。默认情况下,Miniconda 将 pip 与所有其他软件包一起存储,并且应该可以干净地运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-23
    • 2019-04-03
    • 2012-05-14
    • 1970-01-01
    • 2015-12-07
    • 2021-08-22
    • 2019-07-17
    • 2020-04-28
    相关资源
    最近更新 更多