我尝试导入请求:
import requests
但我得到一个错误:
ImportError:没有模块命名请求
我尝试导入请求:
import requests
但我得到一个错误:
ImportError:没有模块命名请求
当前回答
在过去几个月里,我有过几次这样的问题。我还没有看到发布的fedora系统的好解决方案,所以这里还有另一个解决方案。我正在使用RHEL7,我发现了以下问题:
如果您通过pip安装了urllib3,并且通过yum安装了请求,那么即使您安装了正确的软件包,也会遇到问题。如果您通过yum安装了urllib3,并且通过pip安装了请求,则同样适用。以下是我解决问题的方法:
sudo pip uninstall requests
sudo pip uninstall urllib3
sudo yum remove python-urllib3
sudo yum remove python-requests
(确认已删除所有这些库)
sudo yum install python-urllib3
sudo yum install python-requests
请注意,这只适用于运行Fedora、Redhat或CentOS的系统。
来源:这个问题(在对这个答案的评论中)。这个github问题。
其他回答
在OSX上,该命令将取决于您的python安装风格。
Python 2.x-默认
sudo pip install requests
Python 3.x
sudo pip3 install requests
如果您命中了pip安装请求,并且已经满足了Requirement的输出消息,但仍然会收到错误:ImportError:No module named requests。
当您发现自己处于不同的口译员/虚拟环境中时,可能会发生这种情况。
您可以将模块的路径复制并附加到工作环境中。注意:此路径通常带有消息Requirement already confirmed
在导入请求之前,应该导入sys,然后追加复制的路径。
例子:命令提示符:pip安装请求输出:已满足要求:/usr/local/lib/python3.9/site-packages中的请求
import sys
sys.path.append("/usr/local/lib/python3.9/site-packages")
import requests
在命令提示符(Windows)或终端(Linux/macOS)中键入此命令:
pip install requests
我不清楚您使用的是哪种版本的Python。
如果是Python3,解决方案是sudopip3安装请求
我的答案与@pi-k基本相同。在我的案例中,我的程序在本地运行,但未能在QA服务器上构建。(我怀疑devops的包的旧版本被阻止了,我的版本肯定太过时了)我刚刚决定升级所有的东西
$ pip install pip-review
$ pip-review --local --interactive