【问题标题】:No module recognised after creating new virtualenv创建新的 virtualenv 后没有识别模块
【发布时间】:2022-11-11 00:48:08
【问题描述】:

所以,我安装了python 3.11,我想用flask模块运行代码,它使用原始python运行,但不在vscode中,所以我遵循堆栈交换的建议并使用命令python -m venv env。 这创建了一个名为 env 的新文件夹,之后我得到一个提示,新的虚拟环境已经创建,你想将它用于工作区文件夹,我说是的,但仍然没有任何效果。现在甚至其他模块都无法被 vscode 或原始 python.exe 识别。 我是编程新手,不知道该怎么做,请帮忙。 谢谢

【问题讨论】:

  • 你安装conda了吗?
  • 是的,我已经安装了 conda

标签: python visual-studio-code virtualenv modulenotfounderror


【解决方案1】:

创建 venv 后,您必须像这样激活它:C:Userenv_folderScripts activate

如果这不起作用,请尝试使用 C:Userenv_folderScripts activate.ps1activate.bat

一旦您在终端中的命令行之前有(venv_name),您就会知道它是否有效

【讨论】:

  • 谢谢,这不起作用,但我做了一些事情,tbf 做了很多不同的事情,而且有些事情奏效了。
【解决方案2】:

python -m venv 环境

根据docs。运行此命令会创建目标目录(创建任何尚不存在的父目录)并在其中放置一个 pyvenv.cfg 文件,其中的 home 键指向运行命令的 Python 安装(目标的通用名称目录是 .venv)。它还创建一个 bin(或 Windows 上的 Scripts)子目录,其中包含 Python 二进制文件/二进制文件的副本/符号链接(适用于平台或在环境创建时使用的参数)。它还创建了一个(最初为空的)lib/pythonX.Y/site-packages 子目录(在 Windows 上,这是 Libsite-packages)。如果指定了现有目录,它将被重新使用。

我认为您需要更多的是创建一个 conda 环境。使用如下命令创建(以python 3.10.4为例),然后可以在python解释器中手动选择。

conda create -n env-01 python=3.10.4

您也可以阅读vscode docs 了解更多详情。

【讨论】: