为什么Python调试使用正确的虚拟环境,但运行失败,即使选择正确的Python解释器?



我有一个.virtualenvs文件夹与venvvenv2。我已经在venv2中安装了requests模块,但不在venv1中安装,而不是全局。我有一个文件app.py,代码如下:

import requests
r = requests.get('https://github.com')
print(r.status_code)
print("Hello Virtual World")

在VS Code设置中,我有Python虚拟环境路径:~/.virtualenvs.

当我打开这段代码并将Python解释器设置为全局或venv1时,"请求"下划线(无法解析)。当我切换到venv2的Python解释器时,下划线会像预期的那样消失。

问题是,如果我运行代码(Ctrl-Alt-N),我得到一个错误no module named 'requests'。但当我在调试模式下运行时,代码运行并返回代码200并打印"你好虚拟World"。我注意到DEBUG首先调用Activate.ps1

脚本。为什么这不是运行当我切换Python解释器?尽管选择了正确的Python解释器,我是否必须每次都激活我需要的venv ?我使用Python 3.9/VSCode/Windows 10.

这是Code Runner的问题,您可以参考这里了解更多细节。

您可以使用Run Python File in Terminal命令运行python文件,这可以避免这个问题。

相关内容

  • 没有找到相关文章

最新更新