【问题标题】:How to configure VS Code's Integrated Terminal to use the correct Python Interpreter如何配置 VS Code 的集成终端以使用正确的 Python 解释器
【发布时间】:2020-11-04 21:45:20
【问题描述】:

TL;DR

这个问题NOT询问如何选择一个Python解释器来运行或调试代码,此外;这个问题NOT询问关于虚拟环境的任何事情,或者如何激活虚拟环境,所有那是有效的。我觉得重要的是要注意,之前已经提出过以下问题,但由于对所问内容的混淆而未能得到令人满意的答案。社区成员经常认为我在这个问题开头提到的一个问题是被问到的,这里有一个问题是我刚刚写的 here 的一个很好的例子。



这是我的问题:

用户如何配置他们的集成终端以使用用户指定的解释器?

我希望能够将我的终端配置为在我的虚拟环境中使用解释器——它们是下面屏幕截图中我的虚拟环境解释器的一个示例。

  1. 从状态栏中显示 VENV 解释器处于活动状态,并且我的代码运行良好。

  2. Windows 终端 正在使用系统解释器。

由此引起的问题是,我无法从 集成终端 运行 pip 或其他软件包,例如 PyInstaller,因为它没有查看我的 VENV 内部,此外;我不想全局安装这些包。

发生的另一个问题是,我的应用程序的某些部分包含版本敏感包,我需要控制集成终端使用的python解释器的版本。

【问题讨论】:

  • 如果您在启动 python 后检查sys.executable,您会在终端中看到什么?你希望它是什么?
  • @Mark Kortink - 重新打开 VSCode 时会发生什么?您是否尝试过使用其他虚拟环境?请尝试多次刷新终端。
  • @Jill Cheng - 我已多次重启 VSCode 并多次重启终端窗口,但没有任何改变。
  • @np8 - sys.executable 返回我的系统解释器“'C:\\Users\\mark\\AppData\\Local\\Programs\\Python\\Python37\\python.exe'” .我希望终端窗口在我的 venv 中使用解释器,但通常将其指向我选择的任何解释器,我的 venv 目录是“C:\Users\mark\OneDrive\dev\babyclix\.venv\Scripts”。如屏幕截图所示,终端使用 3.7.7 和 venv 3.7.0。
  • VS Code 中的“终端”只是 cmd.exe 或 Powershell(在大多数情况下)。在这种情况下,它似乎是 cmd.exe。似乎由于某种原因,PATH 环境变量中有一个路径,其中包含一个包含错误 python.exe 的文件夹,即使在激活 venv 之后也是如此。打开 cmd.exe,查看echo %PATH% 的输出。然后,运行C:\Users\mark\OneDrive\dev\babyclix\.venv\Scripts\activate.bat 并再次检查echo %PATH%。发生了什么变化?第一个带有python.exe 的文件夹是您运行python 时启动的文件夹。

标签: python visual-studio-code vscode-settings python-venv


【解决方案1】:

我知道这并不能真正回答问题,但它可能对某些人有所帮助,所以就在这里。

我不知道我在做什么,但我终于解决了这个问题...... 我的问题是我试图让默认解释器使用 python 3 而不是 python 2。

我最终从我的 PATH 中删除了 python 2...

最后发现我删除Python 2后路径变成了这个,所以也许可以在这里找到解决方案。

maybe this? { "python.pythonPath": "C:\Users\T\AppData\Local\Programs\Python\Python310\python.exe", "window.zoomLevel": 0, “python.defaultInterpreterPath”:“C:\Users\T\AppData\Local\Programs\Python\Python310\python.exe” }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-04
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 2018-05-07
    • 2018-09-07
    • 2017-06-25
    • 1970-01-01
    相关资源
    最近更新 更多