VS Code中怎么运行Python代码:选择解释器与执行步骤
详细讲解在Visual Studio Code中运行Python代码的完整方法,涵盖Python解释器的选择机制、虚拟环境关联、三种代码执行方式及常见异常排查自检。
在 Visual Studio Code(简称 VS Code)中运行 Python 代码,核心逻辑可以归纳为两个明确动作:首先,告诉编辑器使用哪一个具体的 Python 解释器(Python 运行时路径);其次,选用合适的触发方式将源码提交给该解释器执行。只要解释器指向正确,代码就能在集成终端中平稳输出结果。
全景流程:VS Code 源码编辑、Python 解释器路径绑定与集成终端输出全过程
一、运行前认知:VS Code 与 Python 解释器的协作关系
初次使用 VS Code 的开发者常有一个错觉,以为它是一个像 PyCharm 或 IDLE 那样的独立集成开发环境。实际上,VS Code 本质上是一个轻量级、跨平台的通用代码文本编辑器,它本身并不内置 Python 解释器,也不自带任何 Python 运行库。
要在 VS Code 中顺利运行 Python,依赖三个独立角色的协作:
- 操作系统中的 Python 运行时:在计算机底层实际安装的 Python 解释器程序(如全局安装的 Python、Conda 环境或虚拟环境
.venv),负责读取.py脚本、导入第三方库并执行字节码。 - VS Code 官方 Python 扩展(ms-python.python):充当“桥梁”角色。它扫描系统上存在的所有 Python 安装路径,在界面底部显示当前环境,并将语言服务器(Pylance)的代码补全、语法检查以及调试协议串联起来。
- VS Code 集成终端(Integrated Terminal):负责提供命令行宿主(如 Windows 的 PowerShell/CMD,macOS/Linux 的 zsh/bash),根据扩展传递的路径调用真实的解释器二进制文件并回显控制台输出。
图 1:VS Code 编辑器、Python 扩展与操作系统运行时的协作拓扑
二、关键第一步:在 VS Code 中正确选择 Python 解释器
当系统中存在多个 Python 版本(例如系统自带 Python 3.9、Homebrew 安装的 Python 3.11 以及特定项目的虚拟环境 .venv)时,如果不主动指定解释器,VS Code 可能会使用系统默认环境,导致安装在虚拟环境中的三方包无法被识别。因此,每次新建或打开项目,首要任务就是绑定解释器。
图 2:在 VS Code 中配置与选择 Python 解释器的五个标准步骤
详细操作步骤:
-
以文件夹形式打开项目:
点击顶部菜单文件 (File)→打开文件夹 (Open Folder),选择包含代码的项目根目录。这一步非常关键,它会确立 VS Code 的工作区根路径,并将解释器选择记录持久化在项目根目录下的.vscode/settings.json文件中。 -
调出全局命令面板:
使用快捷键Ctrl + Shift + P(Windows/Linux)或Cmd + Shift + P(macOS),编辑器顶部正中会弹出命令输入搜索框。 -
检索解释器配置指令:
在搜索框内输入Python: Select Interpreter,在过滤结果中点击回车执行。 -
在候选列表中选择目标环境:
扩展会自动列出探测到的所有环境。通常包含以下几类:- Recommended 推荐项:如果项目根目录下已经创建了
.venv或env,列表首项通常会显示形如Python 3.x.x ('.venv': venv) ./.venv/bin/python,直接点击选中即可。 - Conda 环境:显示形如
Python 3.x.x ('base': conda)。 - 全局环境:显示系统路径下的安装版本(如
/usr/local/bin/python3或C:\Python311\python.exe)。 - 手动浏览定位:若项目使用了特殊的虚拟环境路径且未被自动扫描到,点击顶部的
Enter interpreter path...,随后点击Browse...手动定位到该环境的 Python 二进制程序(Windows 下为Scripts\python.exe,macOS/Linux 下为bin/python)。
- Recommended 推荐项:如果项目根目录下已经创建了
-
核对状态栏显示:
观察 VS Code 界面底部状态栏右侧。成功配置后,会清晰显示类似3.11.8 ('.venv': venv)的字样。点击该字样同样可以直接唤起解释器切换列表。
python -m venv .venv)。在 VS Code 中打开该项目时,插件通常会自动弹出提示询问是否选择该工作区虚拟环境,点击“是 (Yes)”即可完成自动绑定。
三、执行 Python 代码的三种主要方式与实操
解释器绑定完毕后,便可开始执行代码。为了直观验证,我们在工作区中新建一个名为 main.py 的测试文件,写入以下示例代码:
# main.py 示例代码
import sys
import os
def display_runtime_info():
print("=== Python 运行环境验证 ===")
print(f"当前解释器可执行路径: {sys.executable}")
print(f"当前 Python 版本: {sys.version.split()[0]}")
print(f"当前工作目录: {os.getcwd()}")
if __name__ == "__main__":
display_runtime_info()
针对不同的使用场景,VS Code 提供了三种常用的执行路径:
图 3:VS Code 三种 Python 代码执行方式综合对比矩阵
方式 1:点击右上角运行三角按钮(Run Python File)
这是日常开发中最常用的方式。打开 main.py 文件,在编辑器右上角的导航工具栏中,找到一个绿色的实心三角播放图标。
- 操作动作:鼠标单击该三角图标,或者在代码编辑区域任意空白处单击鼠标右键,在右键上下文菜单中选择
在终端中运行 Python 文件 (Run Python File in Terminal)。 - 底层行为:VS Code 会在下方唤起集成终端面板,自动执行虚拟环境的激活脚本(如果配置了虚拟环境),随后自动输入完整的执行命令,格式类似于:
/Users/name/my_project/.venv/bin/python /Users/name/my_project/main.py - 预期输出示例:
=== Python 运行环境验证 === 当前解释器可执行路径: /Users/name/my_project/.venv/bin/python 当前 Python 版本: 3.11.8 当前工作目录: /Users/name/my_project
方式 2:使用集成终端直接输入命令行运行
当脚本需要接受命令行入参(例如使用 argparse 模块),或者需要重定向输出到日志文件时,直接在终端中敲命令是更可控的选择。
- 操作动作:按快捷键
Ctrl + `(反引号,位于键盘 Esc 键下方)打开终端。 - 执行命令:如果终端左侧已带有环境激活前缀(如
(.venv)),直接输入:
若需要传入参数,则可以直接追加:python main.pypython main.py --mode production --retry 3 - 适用场景:需要精细化控制执行环境变量、输入重定向、管道处理或连续执行批处理命令时。
方式 3:选区执行与交互式运行(Shift + Enter)
在进行数据处理、算法草稿实验或排查中间变量时,重新执行整个大脚本耗时较长。此时可以使用选区即时执行功能。
- 操作动作:用鼠标高亮选中需要运行的代码片段,或直接把光标置于某一单行代码上,按下
Shift + Enter。 - 底层行为:VS Code 会在终端中即时开启一个交互式 Python REPL 会话,或者(在安装了 Jupyter 扩展时)唤起侧边交互式窗口(Interactive Window),将选中的语句逐行求值,并将打印结果回显在控制台。
- 注意事项:执行片段代码依赖上下文前置变量。若选中的语句调用了尚未定义的变量或函数,终端将抛出
NameError。
四、常见认知偏误与概念辨析
误区:“只要在 VS Code 里安装了 Python 扩展,就可以直接写代码运行,电脑上无需单独安装 Python 软件。”
为什么看似合理:
在 VS Code 的扩展市场中搜索“Python”,点击安装后,界面立即获得了语法高亮、代码提示以及右上角的运行三角按钮。部分初学者在此状态下写了一句 print("hello") 并点按钮,程序确实打印成功了,从而误以为 VS Code 已经自带了完整的 Python 运行能力。
在哪些条件下成立:
上述“安装即用”的情况,仅在用户的操作系统此前已经存在预装或全局安装的 Python 解释器时碰巧成立(例如 macOS 系统曾自带 Python 环境、Linux 发行版预装了 Python3,或者用户先前安装其他开发工具时附带安装了 Python)。此时 VS Code 的 Python 扩展自动扫描并拾取了该系统环境。
哪里需要修正:
VS Code 官方 Python 扩展仅仅是一个提供编辑器语言支持的客户端插件(包含 LSP 协议实现、调试适配器与界面集成),它的安装包体积仅包含前端辅助逻辑,不包含任何 Python 运行时内核与标准库。如果在全新的纯净计算机上只装 VS Code 和 Python 扩展,点击运行按钮将立即报错或弹出系统提示要求安装 Python。必须从 python.org 官方网站下载安装包,或通过包管理器在本地机器上安装真正的 Python 解释器。
辨析:“在终端中直接敲 python 与点击右上角运行按钮调用的是完全相同的环境吗?”
不一定相同。点击右上角运行按钮时,VS Code 会强制使用当前工作区所选解释器的绝对路径去启动脚本;而在终端中手动敲 python main.py 时,执行的解释器完全取决于当前命令行窗口的 $PATH(或 Windows 下的系统环境变量)。如果终端没有正确触发环境激活脚本,终端里的 python 可能会指向全局系统解释器,从而导致“点击按钮运行正常,但在终端命令行敲命令报 ModuleNotFoundError”的典型差异。
五、常见报错与故障自检决策
在运行 Python 代码过程中,如果终端输出了红色异常或无回显,可以按照以下决策流程逐步排查:
图 4:Python 代码运行失败与环境异常自检决策树
高频问题排查清单:
-
提示“No Python interpreter selected”:
说明当前窗口尚未指定任何可用的执行程序。按Ctrl+Shift+P搜索Python: Select Interpreter,在列表中选择一个已安装的环境。若列表为空,说明本机尚未安装 Python,需要前往官方网站完成安装并勾选“Add to PATH”。 -
编辑器中没有语法红线,但终端运行报错
ModuleNotFoundError:
这是典型的“环境不一致”问题。代码分析器(Pylance)可能使用了虚拟环境.venv,但终端窗口使用的是全局 Python。检查终端左侧是否有环境标识,必要时在终端中显式运行source .venv/bin/activate(Linux/macOS)或.venv\Scripts\Activate.ps1(Windows)。 -
Windows PowerShell 提示“因为在此系统上禁止运行脚本”:
Windows 默认的 PowerShell 执行策略阻止了环境激活脚本activate.ps1的运行。可以以管理员身份打开 PowerShell,执行Set-ExecutionPolicy RemoteSigned -Scope CurrentUser解除限制;或在 VS Code 设置中将终端默认 Shell 更改为传统的Command Prompt (CMD)。
六、总结
在 VS Code 中运行 Python 代码的脉络非常明确:它以工作区文件夹为边界,通过命令面板中的 Python: Select Interpreter 显式指定具体的二进制解释器路径,再借由运行按钮、集成终端或选区交互将代码交付执行。理解编辑器与解释器分工解耦的设计原理,能帮助开发者在多项目并行、跨虚拟环境开发时保持清晰的环境掌控,彻底规避各类环境漂移和包冲突问题。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













