[英]can't change python version from visual studio code interpreter
[英]How can I change the Python version in Visual Studio Code?
这些是我的设置:
用户设置
{ "atomKeymap.promptV3Features": true, "editor.multiCursorModifier": "ctrlCmd", "editor.formatOnPaste": true, "python.pythonPath": "python3", "command": "python3", }
工作区设置
{ "python.pythonPath": "${workspaceFolder}/env/bin/python3.6", "git.ignoreLimitWarning": true }
任务.json
{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "0.1.0", "command": "python3", "isShellCommand": true, "args": ["${file}"], "showOutput": "always" }
我怎样才能解决这个问题?
在视图菜单下选择“显示命令托盘”。 然后您可以从命令面板中选择的命令之一是“Python:选择解释器”。 选择此选项将允许您选择要使用的 python 版本。
升级版。 首先,阅读底部的更新#1部分
(首先尝试更新#1)查看您的屏幕截图,我看到您正在使用 Code Runner 扩展。 我想这就是你启动程序的方式。 我不知道它在内部是如何工作的,但是将此行添加到 Code-Runner 扩展 setting.json 文件中修复了它:
"code-runner.executorMap.python": {...
"python": "python3 -u",
...}
在 Code-Runner GitHub 存储库中找到它: https ://github.com/formulahendry/vscode-code-runner/issues/366
如果你输入“python --help”,你会看到“-u”标志代表“无缓冲的二进制标准输出和标准错误......”——不知道为什么它在这里很重要。
更新 #1 。 这变得不那么方便了——我开始使用 python 的虚拟环境,上面的解决方案无法启动这些环境,因为 python3(符号链接)总是链接到同一个 python 环境。
这里的解决方案是使用 Code-Runner 支持的自定义参数,因此您应该将其 settings.json 中的“python”行更改为:
...
"python": "$pythonPath $fullFileName",
...
Tot 的答案是在 Windows 10 上对我有用的,并进行了一些修改。
python
。 如果不是,它可能是可执行文件的完整路径。此解决方案适用于 Mac 和 Linux:
要将 Python 版本从 2.7 更改为 3,请执行以下操作:
在 Vscode 中单击文件 > 首选项 > 设置。
在右侧单击 ...(三个点)并选择(打开 settings.json)
在搜索栏中输入 code-runner.executorMap。
您只能更改右侧的设置。
在最后一个设置后输入一个逗号,然后输入“code-runner.executorMap”并回车,这将复制默认文件中的所有设置。
查找“python”并将其旁边的命令更改为“python3”。
保存更改,您应该一切顺利。
默认情况下,它不知道您的解释器,并将使用默认的.bashrc
或操作系统中的等效项进行初始化。
我从 2021 年 2 月的一个问题中找到了两个相关设置。 检查第二个选项Python > Terminal: Activate Environment
启用虚拟环境的自动激活:
在settings.json
,它被称为"python.terminal.activateEnvironment": true
。
更新(2021 年 8 月 8 日):今天当我在 Windows 上从 VS Code 打开终端时,它会自动插入一行代码& C:/Users/[UserName]/[venv]/Scripts/Activate.ps1
以激活相应的环境与选定的python解释器相关联! 看来上述设置现在是默认行为。 虽然2021 年 7 月的发行说明(版本 1.59)中对终端行为进行了更改,但我没有看到明确提及虚拟环境激活。
新行为记录在此处的“ 环境和终端窗口”中。
"python.pythonPath"
已被弃用因此,大多数以前的答案都已过时。 改用"python.defaultInterpreterPath"
:
2021.6.0(2021 年 6 月 16 日)
5. 在pythonDeprecatePythonPath 实验中添加了工作区级别的python.defaultInterpreterPath 设置。 (#16485)
8、在pythonDeprecatePythonPath实验中显示python.pythonPath弃用提示。 (#16485)
2020.7.0(2020 年 7 月 16 日)
9. 在 Deprecate PythonPath 实验中,提示用户我们已从他们的工作区设置中删除了 pythonPath。 (#12533)
2020.5.0(2020 年 5 月 12 日)
6. 如果在 DeprecatePythonPath 实验中,将 python.pythonPath 设置的现有值一次性传输到新的解释器存储。 (#11052)
8. 在弃用 PythonPath 实验中,增加了提示用户从其工作区设置中删除 python.pythonPath 键的提示。 (#11108)
12. 将在launch.json 中用于引用设置中设置的解释器路径的字符串${config:python.pythonPath} 重命名为${config:python.interpreterPath}。 (#11446)
2020.4.0(2020 年 4 月 20 日)
13.新增用户设置python.defaultInterpreterPath,用于设置Deprecate PythonPath实验时的默认解释器路径。 (#11021)
如果您希望为所有工作区设置默认 python 解释器,请使用Ctrl+Shift+P
打开设置, Preferences: Open User Settings
并搜索Python: Default Interpreter Path
。 否则,如果您只想为当前工作区设置它,请改用Preferences: Open Workspace Settings
。
在您的情况下,您希望将其设置为${workspaceFolder}/env/bin/python3.6
。 如果您直接编辑settings.json
而不是使用 GUI:
{
"python.defaultInterpreterPath": "${workspaceFolder}/env/bin/python3.6"
}
详细说明可以在“手动指定解释器”文档中找到,包括使用环境变量作为解释器的路径。
在 VSCode 中有两条 python 路径:
出于理智的目的,您应该确保“Python:选择解释器”和系统环境变量都指向相同版本的 Python。
Windows 10 中的额外好处。如果您没有设置环境变量,并且在 VSCode 终端中键入“python”,它将指向 C:\Users\YourName\AppData\Local\Microsoft\WindowsApps\python.exe,它只是在 Windows AppStore 中打开 python 链接🙄。
这里的几个答案解释了好的方法,但以下是我的前 2 条建议。
我发现这是最快的方法; 但是,它并不总是可供初次使用的用户使用。 如果您已经在 VS Code 中使用 Python,这通常是访问Python 的最简单方法:选择解释器菜单。 在屏幕的左下方,查找“Python XXX ”。 这是当前为您的项目检测/配置的 Python 版本,单击它会将您带到解释器菜单以更改您正在使用的 Python 版本。 在撰写本文时,我使用的是 Python 3.9.1,如下面的片段所示:
正如@jmh在他的回答中指出的那样,您还可以使用“查看”选项卡导航到Command Palette 。 在 Command Palette 中,搜索Python:选择 Interpreter以显示与上述相同的菜单。
快乐编码!
真的迟到的答案,如果你发现很难在 VsCode 中设置 python 版本,
如果解释器没有显示 envname/bin/python 或您想要的任何所需路径,请转到
VSCODE 主页-->文件-->首选项-->设置
选择右上角的 ...。 您会看到 USER SETTINGS、WORKSPACE SETTINGS、YOURAPP_NAME_SETTINGS。 点击 your_app_name。
“python.pythonPath”:“/home/Jhon/AllWorksUbuntu/Projects/VX-350/envname/bin/python”
在上面播放以设置正确的路径。 你可以走了!!!
为我工作(linux用户);
假设您的系统中安装了其他 python 版本:
看起来只放'python'总是会带来python 2。
只是一个前言:VS 代码运行良好(使用 Python 3.x),并且似乎出乎意料地开始使用 Python 2.7。 input() 函数不会将输入转换为字符串,这时我才意识到发生了什么。 在终端窗口中键入 Python 显示 2.7 正在运行。
为了我....
即使“python.pythonPath”指向一个看似正确的位置(C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python37_64),我的环境变量之一指向 C:\Users\Mike.windows-构建工具\python27。
我删除了环境变量并从 Microsoft Store 重新安装了 Python 3.8,它立即安装了。 我从 VS Code(它正在运行)收到一条消息,说安装了 3.8。 我点击了终端/新终端,输入了 Python,它显示了 3.8 版。 输入“Python xxx.py”,代码开始正常工作。
就我而言,我使用
python --version
即使我的解释器路径是 3.x,它也显示了 python 2.x。 所以通过控制面板从我的电脑上卸载了python 2.x。 然后它对我来说很好。
安装 Anaconda,然后选择它作为解释器是一种将 Python 设置为最新版本并获得使 Jupyter Notebook 工作的扩展的简单方法。
在 Vscode 中,您可以转到首选项 > 设置,然后在右侧菜单中单击第一个图标,即 JSON。 查找“python.pythonPath”和“python.defaultInterpreterPath”并更改路径。 要查找 python3 路径,请打开终端并执行python3 dummyname
。 实际上你会遇到一个错误,但关键是它会告诉你路径!
更新@Isabella answer ,使用当前的 VSCode 1.65.1 和当前的 python 启动器,您可以使用py -version
,例如py -3.8
。
因此,您可以创建一个.vscode
文件夹,其中包含一个名为settings.json
的文件名,其中包含
{
"python.defaultInterpreterPath": "py -3.8",
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.