微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 venv 中导入已安装的模块时出现 ModuleNotFoundError

如何解决在 venv 中导入已安装的模块时出现 ModuleNotFoundError

我在 Visual Studio Code 中使用 venv 在虚拟环境中安装了一个库,然后将其导入到 Python 文件中。但是,当我运行该文件时,出现 ModuleNotFoundError。

尝试的步骤和检查:

  • 我没有安装多个版本的 Python。
  • 我在安装模块和运行文件之前激活了 venv。
  • VS Code 说它正在使用 \venv\scripts 中的 Python 可执行文件
  • 该模块实际上在 venv\Lib\site-packages 中。
  • 我在 venv 内外运行最新版本的 pip。
  • 我重新启动了 VS Code。

奇怪之处:

  • 从内置终端运行文件有效,而不是引发错误
  • which python 在 Bash 中返回 /c/Users/Lyndon/Documents/VS Code/seatmap_parser/\Users\Lyndon\Documents\VS Code\seatmap_parser\venv/Scripts/python 时它应该返回 C:\Users\Lyndon\Documents\VS Code\seatmap_parser\venv\Scripts\python
  • 将设置 "python.pythonPath": "${workspaceRoot}/venv/Scripts/python" 添加到工作区 settings.json 会引发此错误The Python path in your debug configuration is invalid.
  • 如果我停用 venv,全局安装模块,然后重新激活 venv,该文件现在可以工作,这让我认为可能无论如何都运行了错误的 Python 可执行文件

我随时准备应要求检查任何遗漏的详细信息。为什么它不起作用?

解决方法

如果您只想点击指定文件中的 run 获得 OUTPUT,那么您必须转到用户设置。在“python”键后的 "code-runner.executorMap" dict 中输入您的 python 路径。如果未指定,只需键入 code-runner.executorMap 它将为您生成该 dict。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。