在 Windows 10 上使用 Python 3.9.2 在 VS Code 中无法解析/无法从源 Pylance 解析导入

2025-04-16 08:58:00
admin
原创
20
摘要:问题描述:我的 Flask App 服务器正在运行,但有三个导入无法解析。我尝试过:单独重新安装导入重新安装 requirements.txt我为 VSCode Workspace 配置了指向我的项目文件夹的额外路径(现在我的项目文件夹根目录中有一个 .vscode 文件,而以前它不存在)我已经在 VSCod...

问题描述:

我的 Flask App 服务器正在运行,但有三个导入无法解析。
未解决的进口问题

我尝试过:

  1. 单独重新安装导入

  2. 重新安装 requirements.txt

  3. 我为 VSCode Workspace 配置了指向我的项目文件夹的额外路径(现在我的项目文件夹根目录中有一个 .vscode 文件,而以前它不存在)

  4. 我已经在 VSCode 中更新了我的 venv 路径设置

这是我的文件结构:

- > .vscode
- > client *(React front end)*
- > data
- > server *(Python/Flask back end)*
    - > app
    - > venv
    - config.py
    - README.md
    - requirements.txt *(this contains the 3 unresolved, along with several that are resolving)*
- .env
- .flaskenv
- .gitignore
- requirements.txt

很遗憾,这些方法都没能解决我的导入问题,我的路由仍然无法正常工作。有什么想法/建议吗?


解决方案 1:

  1. 打开命令面板 ( Ctrl+ Shift+ P),然后选择Python: Select Interpreter。从列表中,选择项目文件夹中以 开头的虚拟环境.env

  2. 运行终端:创建新的集成终端Ctrl++或从命令面板),它将创建一个终端并通过运行其激活脚本自动Shift激活虚拟环境`

  3. sqlalchemy使用mongoengine命令安装pip install。安装成功后,导入时会自动生成智能提示,不会出现任何警告。

在环境中使用 pip 安装软件包的屏幕截图

此外,该文件夹.vscode还用于存储工作区设置以及调试和任务配置。

解决方案 2:

要解决此问题,请执行以下步骤:

  1. 按键盘上的Ctrl+ Shift+打开命令面板
    P

  2. 在命令面板中,选择Python: Clear Cache and Reload Window

解决方案 3:

如果您正在使用虚拟环境,并且即使尝试使用 pip 安装所有必要的库之后,您仍然必须选择虚拟环境文件夹中存在的 python 解释器。

  1. (Ctrl+Shift+P)然后搜索“Python:选择解释器”

  2. 单击“输入解释器路径”,然后单击“查找...”。

  3. 导航到您的项目虚拟环境文件夹

  4. 进入“Scripts”文件夹,然后选择“python.exe”作为解释器。

这些步骤允许您选择与项目虚拟环境相关的正确的 Python 解释器。

解决方案 4:

我在项目 repo 的 .vscode 文件夹中包含的 settings.json 文件中指定了我正在使用的 python 解释器的路径。

"python.pythonPath": "path-to-interpreter.python.exe"

感谢以下资源!https://dev.to/climentea/how-to-solve-pylance-missing-imports-in-vscode-359b

解决方案 5:

  1. 运行pip --version并复制site-packages路径。(不要复制整个 pip 路径,只需复制文件夹位置)

  2. 在 VS 上打开设置,然后@ext:ms-python.vscode-pylance在设置搜索栏中输入。

  3. 找到Python › Analysis: Extra Paths设置。

  4. 单击Add Item并粘贴复制的值。

解决方案 6:

选择 Python 解释器,然后使用重新加载窗口清除缓存对我来说是有效的。

解决方案 7:

确保我的 Python 环境设置正确后,我执行了“查看”->“命令面板...”->“开发人员:重新加载窗口”

显然,就我而言,pylance 需要重新加载窗口才能获得正确的上下文。

解决方案 8:

我在一台 Windows 电脑上工作。我使用 miniconda 来管理我的虚拟环境。当我编写代码时,我会从命令提示符 (cmd) 启动所有程序,包括 Vscode。

即使在 Vscode 中正确设置了 Python 环境,我还是遇到了你提到的同样的导入错误。有趣的是,我运行代码时没有遇到任何问题,一切正常。但在编写代码时,我看不到与出现导入错误的库相关的函数。

解决方案:

从命令提示符启动 Vscode 之前,请先为项目激活正确的 conda env。

为什么会发生这种情况?

认为这种情况发生是因为,当你在启动 Vscode 之前没有激活任何 conda 环境时,基础 conda 环境会被默认加载。这会导致导入冲突(你可以将这些包安装到环境中,然后像之前一样运行所有程序来检查这个问题)。

解决方案 9:

可能是因为这个原因,VSCode 使用了错误的 Python 路径。如有必要,应该使用基础解释器而不是 vscode 解释器。

解决方案 10:

在确认我的 Python 解释器在 VS Code 中正确加载后,我简单地清理了环境变量,并在本地重新安装了项目,导入错误就消失了。我个人的 VS Code/Pylance 缓存有点奇怪,重新安装依赖项和模块就解决了这个问题。

解决方案 11:

这可能与您的情况无关,但如果您在 VS Code 中打开一个交互式窗格,那么无论您将其设置为什么,VS Code 都会保留该环境。因此,请关闭交互式窗口,切换至您想要使用的环境,然后再返回。

解决方案 12:

对于 miniconda,我必须使用 安装 python-dotenv conda install python-dot-env。我尝试将目标标志传递给 pip。

解决方案 13:

对于 VSCode,使用以下命令将依赖包安装到项目的虚拟环境中:

.venvscriptspython -m pip install -r requirements.txt

解决方案 14:

就我而言,我用它来asdf管理语言 SDK。所以,选择./env/bin/python(~/projects/myproject/env/bin/python对我来说) 不起作用——我的一些库可以通过这种方式识别,但不是全部。为了解决这个问题,我不得不选择输入which pythonvenv 时显示的 Python 解释器——结果可能和你想象的 ./env/bin/python一样——它实际上是~/.asdf/shims/python

就我而言,~/.asdf/shims/python这是一个执行以下任务的 shell 脚本exec /opt/homebrew/opt/asdf/libexec/bin/asdf exec "python" "$@"......

而且,看起来只有一部分pip 包最终到达了我预期的位置(env/lib/python3.11/site-packages)——我想这意味着其余的包都是全局安装的?或者说,它们全都像乌龟一样……

部分原因是我很高兴代码完成功能能够正常工作并且 vscode 中的波浪线消失了;然而,这似乎为我未来的解开创造了一些新的有趣的谜题。

解决方案 15:

使用 Windows 选项“连接到网络驱动器”,我将我的计算机连接到存储文件的位置。

现在一切正常。

在此处输入图片描述

相关推荐
  政府信创国产化的10大政策解读一、信创国产化的背景与意义信创国产化,即信息技术应用创新国产化,是当前中国信息技术领域的一个重要发展方向。其核心在于通过自主研发和创新,实现信息技术应用的自主可控,减少对外部技术的依赖,并规避潜在的技术制裁和风险。随着全球信息技术竞争的加剧,以及某些国家对中国在科技领域的打压,信创国产化显...
工程项目管理   2482  
  为什么项目管理通常仍然耗时且低效?您是否还在反复更新电子表格、淹没在便利贴中并参加每周更新会议?这确实是耗费时间和精力。借助软件工具的帮助,您可以一目了然地全面了解您的项目。如今,国内外有足够多优秀的项目管理软件可以帮助您掌控每个项目。什么是项目管理软件?项目管理软件是广泛行业用于项目规划、资源分配和调度的软件。它使项...
项目管理软件   1533  
  PLM(产品生命周期管理)项目对于企业优化产品研发流程、提升产品质量以及增强市场竞争力具有至关重要的意义。然而,在项目推进过程中,范围蔓延是一个常见且棘手的问题,它可能导致项目进度延迟、成本超支以及质量下降等一系列不良后果。因此,有效避免PLM项目范围蔓延成为项目成功的关键因素之一。以下将详细阐述三大管控策略,助力企业...
plm系统   0  
  PLM(产品生命周期管理)项目管理在企业产品研发与管理过程中扮演着至关重要的角色。随着市场竞争的加剧和产品复杂度的提升,PLM项目面临着诸多风险。准确量化风险优先级并采取有效措施应对,是确保项目成功的关键。五维评估矩阵作为一种有效的风险评估工具,能帮助项目管理者全面、系统地评估风险,为决策提供有力支持。五维评估矩阵概述...
免费plm软件   0  
  引言PLM(产品生命周期管理)开发流程对于企业产品的全生命周期管控至关重要。它涵盖了从产品概念设计到退役的各个阶段,直接影响着产品质量、开发周期以及企业的市场竞争力。在当今快速发展的科技环境下,客户对产品质量的要求日益提高,市场竞争也愈发激烈,这就使得优化PLM开发流程成为企业的必然选择。缺陷管理工具和六西格玛方法作为...
plm产品全生命周期管理   0  
热门文章
项目管理软件有哪些?
曾咪二维码

扫码咨询,免费领取项目管理大礼包!

云禅道AD
禅道项目管理软件

云端的项目管理软件

尊享禅道项目软件收费版功能

无需维护,随时随地协同办公

内置subversion和git源码管理

每天备份,随时转为私有部署

免费试用