即使“要求已经在Pip中满足”,也找不到Python模块

时间:2017-07-27 08:32:13

标签: python pip python-requests

在OS X中编写一些python,它说的是我用pip安装的几个软件包“ImportError:no module named requests”

运行pip安装请求时

> sudo -H pip install requests 
Requirement already satisfied: requests in /usr/local/lib/python2.7/site-packages 
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python2.7/site-packages (from requests) 
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python2.7/site-packages (from requests) 
Requirement already satisfied: urllib3<1.22,>=1.21.1 in /usr/local/lib/python2.7/site-packages (from requests) 
Requirement already satisfied: idna<2.6,>=2.5 in /usr/local/lib/python2.7/site-packages (from requests)

它在twindb_cloudflare,requests,group,tarutil和MySQL DB上出错了。我能够在另一个脚本(在同一文件夹中)运行完全相同的导入而不会出错。

7 个答案:

答案 0 :(得分:9)

在命令提示符下运行。

pip list

如果您使用旧版本,请检查系统上安装的版本。

尝试卸载软件包......

pip uninstall requests

尝试安装后:

pip install requests

您还可以测试pip是否不起作用。

easy_install requests

答案 1 :(得分:2)

就我而言,我运行的是 Jupyter 附带的 Python 版本,它显然将模块安装在与默认位置不同的位置。我通过在 Jupyter 中运行它发现了这一点:

import sys
sys.executable

给了我

'/usr/local/Cellar/jupyterlab/3.0.13/libexec/bin/python3.9'

然后我可以在 Jupyter 中运行以下命令:

!/usr/local/Cellar/jupyterlab/3.0.13/libexec/bin/python3.9 -m pip install scipy matplotlib

然后我就可以导入我的模块了:

import scipy.stats
import matplotlib

答案 2 :(得分:0)

我遇到了同样的问题(在MAC OS中也是如此),并通过使用python3运行python脚本解决了它: python3 script.py

就我而言,我也在使用pip3而不是pip。

答案 3 :(得分:0)

我遇到了这个问题,终于找到了解决方法。

默认用户安装,因为普通站点软件包不可写

已满足要求:/ usr / lib / python3 / dist-packages(2.2.12)中的django

使用 'sudo'解决用户安装问题;

和pip install --target = / usr / local / python3.7 / site-packages --upgrade {module_name}

有人提到这个为我工作。

答案 4 :(得分:0)

如果您使用的是Mac,则可能是您使用pip安装了模块(意思是python2,但是您使用python3执行了代码,而python3没有为python2安装的模块)。

Mac已将python版本2设置为默认版本,并且通常不预安装pip或与版本2链接。我建议采用这种方式。将版本3用于您的个人用例,并将Mac的版本2保留为默认设置。由于您必须自己安装python3,这意味着您可能还需要检查/安装pip3。

检查是否已安装python 3:

python3 --version

检查是否已安装pip3(通常自python 3.4起默认包含):

pip3 --version

检查您通过pip3安装了哪些软件包:

pip3 list

如果使用编辑器工具,请确保在运行文件时将其设置为使用python3。

VS代码示例: 将VS Code设置为在右下角使用Python3,打开.py文件时应该会看到它:Set Python version

现在,如果要将任何模块导入python,请确保使用pip3安装它们:

pip3 install package_name

如果遇到权限问题,则可以考虑以sudo权限运行命令:

sudo pip3 install package_name

答案 5 :(得分:0)

我的 Raspberry Pi 4 无法识别 ipython 命令,并在尝试安装 iPython 时显示以下内容:

me@raspberrypi:~ $ sudo pip3 install ipython
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: ipython in /usr/lib/python3/dist-packages (5.8.0)
Requirement already satisfied: pexpect in /usr/lib/python3/dist-packages (from ipython) (4.6.0)

我知道这不是 PATH 问题,因为 iPython 是一个 pip 包。

我在 IPython 下找到了一个 /usr/lib/python3/dist-packages/ 目录,在这个目录中我找到了程序 __main__.py

运行 __main__.py 启动了 iPython:

python3 /usr/lib/python3/dist-packages/IPython/__main__.py

我在 .bashrc 文件中添加了以下别名,以便我只需输入 ipython

alias ipython='python3 /usr/lib/python3/dist-packages/IPython/__main__.py'

希望以上内容对您有所帮助。上帝保佑

答案 6 :(得分:0)

我对 PyPDF2 也有同样的问题。在它工作的前一天,但现在我无法导入。当我再次安装时,它显示我已经安装。

这里我们需要知道它安装在哪里以及从哪里导入。 当两个路径都匹配时,这个问题可能会得到解决。

或 如果存在版本问题,我们需要了解版本兼容性。 哪个版本的 PyPDF2 将支持 python 3.8xxx

相关问题