Python:在 pipelinev 中的 pip3 安装请求后“没有名为“请求”的模块”

7l-*_*l04 3 python pip pipenv

我正在尝试使用 Python 3 在 pipelinev 中安装库请求。我尝试过:

  1. pip install requests,然后忘记pip仅安装 Python 2,导致,
  2. pip3 install requests,肯定会返回

Requirement already satisfied: requests in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (2.19.1)
Requirement already satisfied: idna<2.8,>=2.5 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from requests) (2.7)
Requirement already satisfied: urllib3<1.24,>=1.21.1 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from requests) (1.23)
Requirement already satisfied: certifi>=2017.4.17 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from requests) (2018.8.24)
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (from requests) (3.0.4)
Run Code Online (Sandbox Code Playgroud)

当我使用 运行 python 文件时import requests,一切正常,但是当我运行时pipenv run python mypythonscript.py,出现错误ModuleNotFoundError: No module named 'requests'。请告诉我缺少什么。

Mik*_*eyn 6

这里的问题是pip3 install requests在 pipelinev 的 virtualenv 之外运行,它安装在 virtualenv 之外,因此requests从 virtualenv 内运行的代码中找不到库。

将库安装到 virtualenv 的正确方法是pipenv install requests,它也会添加requests到您的 Pipfile 中。如果你想暂时安装它而不保存到 Pipfile 中,你可以运行pipenv run pip install requests.