无法从源 Pylance 解析导入 "flask" (reportMissingModuleSource)

Import "flask" could not be resolved from source Pylance (reportMissingModuleSource)

写的时候

from flask import Flask

一条黄线出现在 flask 下并说明 无法从源 Pylance 解析导入“flask”(reportMissingModuleSource)。另外,我也能够成功地完成这个包的工作。但问题是,我不能很好地使用 类 和方法的自动建议。

进一步:

  1. 我检查过flask安装成功。
  2. 我也访问了这个帖子https://github.com/microsoft/pylance-release/issues/236

我在 vscode 中设置 settings.json 如下:

"python.analysis.extraPaths": [
    "/media/sarimurrab/New Volume/COURSES/Flask/FlaskMigrateforDatabaseMigrations/2"
]

但仍然无法解决错误。

您使用的是 Virtualenv 吗?如果是这样,请确保 VSCode 正在使用 virtualenv 作为您的 python 解释器,否则它将无法获取您在该 virtualenv 中安装的软件包。

为此,请单击底部栏中的 Python 解释器,您应该会得到一个可能的 python 解释器列表,包括您的 virtualenv。

当我没有在VSCode当前使用的Python环境中安装模块“flask”时:

请使用命令“pip --version”查看模块安装工具“pip”的来源,模块安装在这个位置:

然后,我们可以使用命令“pip show flask”查看模块“flask”的安装位置:(检查模块的安装位置是否与Python一致VSCode左下角显示的环境。)

如果此处仍然显示“reportMissingModuleSource”消息,请重新加载 VS Code。

(F1, Developer: Reload Window)

我在 vscode 上尝试导入烧瓶时遇到了类似的问题。 我使用 anaconda. Simply you install the flask module in your created environment example screenshot.

修复了它

如何在 anaconda 中创建虚拟环境:
1. 在左侧边栏中,单击环境。
2. 单击创建(在底部)。
3. 在弹出窗口 window 中,为您的 vir.env 命名 select 语言版本。
4.创建好之后就可以开始安装了 您环境中的不同模块。

希望对您有所帮助!

那是你没有选择正确的道路, 类型:
pipenv --venv
然后它会告诉你你的虚拟环境安装在哪里。检查软件包在您的环境中的安装位置,然后输入来自 shell\scripts 或 whatever\python 的内容,软件包将起作用。

对于 Linux Mint 以及那些已经安装了 flask,但是 VSCode 没有找到的人:

  1. 检查 Flask 路径:pip show flask(应该类似于 Location: /home/<username>/.local/lib/python3.8/site-packages
  2. 在VSCode中单击左下角按钮并选择python解释器,在我的例子中,我将其从python3.9更改为python3.8,正如我们在烧瓶 path.

一些答案('s, 's, and 's)提到了选择正确的 Python 解释器以使 Pylance 正常运行所必需的事实。我想补充一点,当使用 Jupyter Notebook 并且已经选择了正确的 Python 内核时,这仍然是必要的。

同时选择 Python 解释器和笔记本的 Python 内核来使事情正常进行是违反直觉的。考虑到 Python 解释器的按钮(在屏幕左下角,状态栏上)不一定在 Jupyter Notebook 打开时出现,但在 Python 脚本打开时出现,这更违反直觉。打开。例如,in this screenshot, we see the little line under Scikit-learn's import, indicating a problem with the import (even though the import is successful). However, the correct Python kernel, with Scikit-learn installed, is already chosen. Only opening a Python script 我们注意到 Python 解释器是这种行为的原因,因为在没有 Scikit-learn 的情况下选择了错误的解释器。从某种意义上说,这背后的原因可能是 Python 内核或 Conda 环境的问题(在使用 Jupyter Notebook 和 Jupyter Lab 进行实验时经常遇到这种问题)。我希望这个答案可以帮助那些在 VS Code 中的 Jupyter Notebooks 的特定上下文中寻找解决此问题的人。他们可能会忽略其他答案,因为他们认为对他们来说情况并非如此。

我遇到了同样的问题。我尝试了堆栈溢出的所有解决方案,但 none 有效。但是经过大量的搜索和浪费时间,我发现了我的愚蠢错误。 我创建了名为 'flask' 的文件夹并将我的项目存储在那里。我是初学者并且经历了很多这样的愚蠢错误。如果有人犯同样的错误,希望它能有所帮助。