首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ModuleNotFoundError:在vscode中没有使用venv命名的“请求”模块

ModuleNotFoundError:在vscode中没有使用venv命名的“请求”模块
EN

Stack Overflow用户
提问于 2019-09-30 00:59:46
回答 5查看 22.2K关注 0票数 4

我有一个文件,我一直到第1行import requests,没有更多了,我收到了下面的error ModuleNotFoundError: No module named 'requests'

使用Visual代码安装的VSCODE registered

  • Verified

  • ,今天安装在VSCODE中的x64 3.7.4

  • Python扩展中,VSCODE中创建了VSCODE作为工作区的子文件夹,创建VSCODE终端时被VSCODE识别,我正在使用VSCODE中的解释器,如VSCODE内终端内的
  1. ran pip install requests中所示-已完成的VSCODE<代码>D13以确认requests==2.22.0是安装在venv < Code >H 216G 217中的。

我不明白为什么VSCODE python解释器会不承认已安装了请求。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2019-09-30 01:48:44

谢谢你的回复。几个小时后我发现了我自己的问题。

首先,我发现当我在VSCODE中运行终端时,它是针对全局解释器运行的。然后我尝试了./pip freeze,它如预期的那样工作。这告诉我终端连接错了解释器。

由于某种原因,当我在终端中“运行”它正在执行的文件时,它并没有‘激活’venv。我已经多次关闭和重新打开VSCODE,但是由于某种原因,当我关闭终端窗口并使用CTRL+SHIFT+重新打开时,当它试图使用PS1脚本激活我的venv时,我收到了一个关于签名脚本的错误。我在一个普通的Set-ExecutionPolicy -ExecutionPolicy RemoteSigned窗口中运行PowerShell,然后在VSCODE中重新打开终端窗口,它成功地激活了我的venv,我知道在终端行的开头看到了我的venv名称。然后我运行'pip冻结‘来确认在venv中安装了哪些模块,然后在普通的powershell窗口中再次运行,这是不同的。

有些文档说要运行Set-ExecutionPolicy -ExecutionPolicy RemoteSigned,这是我稍后发现的,但是很高兴知道这是必需的。

票数 1
EN

Stack Overflow用户

发布于 2020-01-20 01:14:32

在vscode终端中尝试获取python版本

代码语言:javascript
复制
python --version

并检查python版本的vscode IDE,点击左下角。

确保这两个版本是一致的。如果没有,请选择与终端版本相同的IDE版本。

票数 5
EN

Stack Overflow用户

发布于 2020-05-16 09:52:13

您检查了用户和工作区设置吗?

确保工作区设置(而不是用户设置)指向项目的venv路径。

我遇到了类似的问题,但通过更改工作区设置python以指向我的venv路径,解决了这个问题,如下所示。

代码语言:javascript
复制
{
    "python.pythonPath": "${workspaceFolder}/code/venv/bin/python"
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58160360

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档