ImportError: No module named requests but module already exists

ImportError: No module named requests but module already exists

我的代码在尝试导入请求时失败,尽管它已经安装了。我做了一个 pip list 并看到那里请求的模块,我卸载它并使用 pip installpip3 install 重新安装它,两次也添加了 sudo。每当我尝试安装它时,我都会收到一条消息,指出要求已得到满足。还有什么我可以尝试的吗? 如果有帮助,我正在 Mac 上使用 VSCode,我还安装了 Jupyter 和 Spyder 并且之前使用过它们,但是我从未在此设备上使用过请求模块。

更新:

我创建了一个 virtualenv 并在那里安装了请求,当 运行 venv 中的脚本时我不再收到错误,但是我仍然很好奇为什么它被扔到基本环境中,还有什么我可以检查一下吗?

你可能有多个 installations/environments.

在“import requests”之前,行输入“import sys; print(sys.executable)”。 这将打印正在使用的 python 可执行文件 - 验证它是否与您可以使用 .

成功导入请求的文件相同

试试这个

pip install chardet2 urllib3 

python3 -m pip install requests

包依赖有问题

对我有用的是在您尝试再次安装请求时删除 pip3 指定目录中名称以“request-SOMETHING”开头的三个文件夹,例如

Requirement already satisfied: requests in /usr/lib/python3/dist-packages

然后用 pip 重新安装,它应该在你的 sys.executable 目录中。