0

0

怎么使用VSCode运行Python_VSCode执行和调试Python代码完整教程

蓮花仙者

蓮花仙者

发布时间:2025-08-25 14:33:01

|

756人浏览过

|

来源于php中文网

原创

要让VSCode成为高效的Python开发工具,需正确配置Python解释器并充分利用其扩展功能。首先安装Python和VSCode,然后安装Microsoft官方Python扩展,通过Ctrl+Shift+P选择合适的解释器,确保运行环境正确。运行代码可通过右键“Run Python File in Terminal”、点击右上角运行按钮或在集成终端手动执行。调试时设置断点,按F5启动调试,使用调试控制条进行步进、继续等操作,并结合变量监视、调用堆栈和调试控制台深入分析程序状态。为避免依赖冲突,应为每个项目创建独立虚拟环境(如使用python -m venv .venv),并通过requirements.txt管理依赖。常见问题如“ModuleNotFoundError”多因解释器选择错误或未激活虚拟环境,可通过重新选择解释器和安装依赖解决。性能优化方面,建议排除无关文件夹、精简虚拟环境、关闭非必要扩展,并合理配置Pylance、black、flake8等工具。高级调试技巧包括使用条件断点、日志点、异常断点和自定义launch.json配置,以提升问题定位效率。对于编码问题,应在文件头声明编码并在open()函数中显式指定encoding='utf-8'。通过以上步骤和实践,可全面发挥VSCode在Python开发中的强大能力。

怎么使用vscode运行python_vscode执行和调试python代码完整教程

在VSCode中运行和调试Python代码,核心在于正确配置Python解释器和利用VSCode强大的Python扩展。一旦这些基础设置到位,无论是执行简单的脚本还是进行复杂的断点调试,都会变得非常直观高效。

解决方案

要让VSCode成为你得力的Python开发伙伴,以下是我总结的一套行之有效的步骤,基本能覆盖你日常开发所需:

  1. 安装Python环境: 首先,你的系统上必须安装了Python。我个人推荐从Python官网下载安装包,或者通过Anaconda/Miniconda来管理环境,这能省去不少后期麻烦。安装时,记得勾选“Add Python to PATH”选项,这很重要。

  2. 安装VSCode: 如果你还没有安装VSCode,直接去官网下载并安装即可。它是一个轻量级但功能强大的编辑器。

    立即学习Python免费学习笔记(深入)”;

  3. 安装Python扩展: 这是关键一步。打开VSCode,点击左侧边栏的“Extensions”图标(或按

    Ctrl+Shift+X
    ),在搜索框中输入“Python”,找到由Microsoft提供的那个Python扩展,点击“Install”。这个扩展提供了代码补全、智能提示、调试等一系列核心功能。

  4. 选择Python解释器: 安装完扩展后,打开一个Python文件(

    .py
    文件),或者新建一个。接着,按下
    Ctrl+Shift+P
    (或
    F1
    ),在弹出的命令面板中输入“Python: Select Interpreter”,然后选择你想要使用的Python解释器。通常,VSCode会自动检测到你系统上的Python环境和虚拟环境。选择一个正确的解释器是确保代码能按预期运行的基础,尤其是在你使用虚拟环境的时候。

  5. 运行Python代码:

    • 在终端中运行: 最直接的方式是右键点击编辑器中的Python文件,选择“Run Python File in Terminal”。这会在VSCode的集成终端中执行你的脚本,并显示输出。
    • 使用运行按钮: 在VSCode编辑器的右上角,你会看到一个绿色的“运行”按钮(通常是一个小三角形)。点击它,VSCode会使用当前选定的解释器来运行你的Python文件。
    • 手动在集成终端运行: 你也可以打开VSCode的集成终端(
      Ctrl+``
      ),然后手动输入
      python your_script_name.py
      来运行。我个人经常用这种方式,因为可以更灵活地添加命令行参数。
  6. 调试Python代码: 调试是排查问题、理解代码执行流程的利器。

    • 设置断点: 在你想要暂停代码执行的行号左侧点击一下,会出现一个红色圆点,这就是断点。
    • 启动调试: 点击左侧边栏的“Run and Debug”图标(或按
      Ctrl+Shift+D
      ),然后点击绿色的“Run and Debug”按钮,或者直接按
      F5
      。VSCode会启动调试会话,并在你设置的第一个断点处暂停。
    • 调试控制: 调试时,界面上方会出现一个调试控制条,包含“继续”、“步过”、“步入”、“步出”、“重启”、“停止”等按钮。
      • 继续 (F5): 继续执行到下一个断点或程序结束。
      • 步过 (F10): 执行当前行,如果当前行是一个函数调用,不会进入函数内部。
      • 步入 (F11): 执行当前行,如果当前行是函数调用,会进入函数内部。
      • 步出 (Shift+F11): 从当前函数中跳出,回到调用它的地方。
    • 查看变量和调用堆栈: 在调试视图的左侧,你可以看到当前作用域内的所有变量值,以及程序的调用堆栈,这对于理解程序状态和执行路径非常有帮助。
    • 调试控制台: 在调试过程中,你可以在调试控制台中输入Python表达式,实时查看结果,甚至修改变量值,这在某些复杂场景下非常有用。

VSCode中Python环境配置有哪些常见误区和最佳实践?

说实话,Python环境配置这块,新手常常踩坑,老手也可能一不留神就掉进去。在我看来,最大的误区就是忽视虚拟环境(Virtual Environment)的重要性。很多人习惯直接把所有库都安装到系统全局Python环境里,结果就是项目A需要

requests==2.20.0
,项目B需要
requests==2.28.0
,这下就冲突了。另一个常见问题是VSCode没有正确识别或激活你想要的解释器,导致运行和调试时用的根本不是你期望的环境。

最佳实践方面,我强烈建议:

  1. 拥抱虚拟环境: 无论项目大小,都为每个项目创建一个独立的虚拟环境。这能确保项目依赖的隔离性,避免不同项目间的库版本冲突。Python自带的

    venv
    模块就很好用,在项目根目录运行
    python -m venv .venv
    即可创建一个名为
    .venv
    的虚拟环境。Anaconda用户可以使用
    conda create -n myenv python=3.x

  2. VSCode自动检测与手动选择结合: VSCode的Python扩展通常能自动检测到项目目录下的虚拟环境。但有时候,它可能不会立即识别或你创建了多个虚拟环境。这时,你需要手动通过

    Ctrl+Shift+P
    -> “Python: Select Interpreter”来明确指定。选择解释器时,优先选择项目目录下的虚拟环境中的Python可执行文件(例如
    .venv/Scripts/python.exe
    .venv/bin/python
    )。

  3. 使用

    requirements.txt
    管理依赖: 在虚拟环境激活状态下,当你安装了项目所需的库后,记得运行
    pip freeze > requirements.txt
    来生成一个依赖清单。这样,其他人或者你自己在另一台机器上,只需激活虚拟环境后运行
    pip install -r requirements.txt
    就能快速还原项目环境。这简直是团队协作和项目部署的救星。

  4. 保持Python扩展和解释器更新: VSCode的Python扩展会不断更新,带来新的功能和性能优化。同时,定期更新你的Python解释器到最新稳定版本,也能避免一些已知问题。

  5. 理解

    PYTHONPATH
    有时候,你的项目结构比较复杂,某些模块可能不在Python默认的搜索路径中。你可以通过修改
    PYTHONPATH
    环境变量来告诉Python去哪里找这些模块。在VSCode的
    launch.json
    中,你也可以为调试会话单独设置
    env
    变量,包括
    PYTHONPATH
    ,这比全局修改环境变量要灵活得多。

如何高效利用VSCode的调试功能排查Python代码错误?

调试不仅仅是设个断点然后F5那么简单,它是一门艺术,也是一种高效解决问题的思维方式。除了前面提到的基础功能,我个人在实际工作中,会更深入地利用VSCode调试器的一些高级特性:

  1. 条件断点 (Conditional Breakpoints): 这绝对是我的最爱之一。当你的循环迭代次数非常多,或者某个bug只在特定条件下出现时,你不可能每次都F5到那里。右键点击断点,选择“Edit Breakpoint...”,然后输入一个Python表达式。只有当这个表达式评估为

    True
    时,断点才会触发。比如
    i > 100
    或者
    user_id == 'buggy_user'
    。这能极大节省你定位问题的时间。

  2. 日志点 (Logpoints): 有时候你不想暂停程序,只是想在某个点打印一些变量值来看看。传统做法是加

    print()
    ,但调试完还得删掉。日志点就完美解决了这个问题。同样是右键点击断点,选择“Edit Breakpoint...”,然后选择“Log Message”,输入一个带花括号表达式的字符串,比如
    "Value of x: {x}, iteration: {i}"
    。程序执行到这里时,会在调试控制台打印这条消息,但不会暂停。这对于理解程序流和变量变化趋势非常有用,而且不会污染你的代码。

  3. 异常断点 (Exception Breakpoints): 你可以在“Run and Debug”视图的“Breakpoints”部分,勾选“Uncaught Exceptions”甚至“Caught Exceptions”。这样,当程序抛出任何未捕获(或已捕获)的异常时,调试器会立即暂停,让你直接定位到异常发生的地方。这比看一长串的回溯信息要高效得多,特别是当异常被深层捕获但没有妥善处理时。

    笔头写作
    笔头写作

    AI为论文写作赋能,协助你从0到1。

    下载
  4. 变量监视 (Watch Window): 在调试过程中,除了查看当前作用域的变量,你还可以把一些关键变量或表达式添加到“Watch”窗口。这样,无论你走到哪里,这些被监视的值都会实时更新,让你能持续关注它们的变化,而不需要每次都去展开变量列表。比如,你可以监视一个复杂的字典或者列表的特定元素。

  5. 调试控制台的交互性: 在程序暂停在断点时,调试控制台不仅仅是打印日志的地方,它还是一个实时的Python解释器!你可以在这里执行任何Python代码,查看变量的当前值,甚至修改它们(比如

    my_variable = new_value
    ),然后继续执行。这对于快速测试某个假设、修复数据或者尝试不同的代码路径非常强大,省去了反复修改代码、重启调试的麻烦。

  6. launch.json
    的深度定制: 对于更复杂的项目,比如Web框架(Flask/Django)、多进程应用、或者需要特定命令行参数的脚本,你可能需要定制
    launch.json
    文件。这个文件允许你定义多个调试配置。例如,你可以配置一个调试器来启动Flask开发服务器,另一个来运行测试套件。

    一个简单的

    launch.json
    示例,用于带参数运行一个脚本:

    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Python: Current File with Args",
                "type": "python",
                "request": "launch",
                "program": "${file}",
                "console": "integratedTerminal",
                "args": ["--env", "dev", "--port", "8000"], // 这里添加你的命令行参数
                "justMyCode": true // 仅调试我的代码,忽略第三方库
            }
        ]
    }

    通过这些高级功能,你可以更精确地控制调试流程,更快地找到并解决问题。

VSCode运行Python时,如何优化性能和解决常见运行问题?

VSCode在运行Python时,通常表现良好,但偶尔也会遇到性能瓶颈或一些让人头疼的运行问题。在我看来,这些问题大多可以通过一些配置调整和理解其工作原理来解决。

性能优化方面:

  1. 善用

    Pylance
    和代码分析工具 VSCode的Python扩展默认集成了
    Pylance
    ,它提供了非常快速的类型检查、代码补全和静态分析。确保它正常工作,能显著提升你的开发体验。此外,配置
    black
    进行代码格式化,
    flake8
    pylint
    进行代码风格检查,虽然它们会占用一些资源,但从长远看,能减少很多因代码风格问题导致的返工,间接提升效率。如果你的项目很大,你可能需要调整这些工具的触发时机(例如,只在保存时运行,而不是实时运行)。

  2. 虚拟环境的精简: 保持你的虚拟环境尽可能精简,只安装项目必需的库。臃肿的虚拟环境会增加VSCode加载和分析代码的时间,尤其是在启动时。

  3. 排除不必要的文件/文件夹: 在VSCode的设置中,你可以配置

    files.exclude
    search.exclude
    来忽略掉像
    node_modules
    .git
    __pycache__
    venv
    等不相关的文件夹。这能减少VSCode需要索引的文件数量,从而加快文件搜索、代码补全的速度,并减轻CPU负担。

  4. 关闭不必要的扩展: 虽然VSCode扩展很强大,但过多的扩展可能会拖慢编辑器。定期审视并禁用那些不常用或与当前项目无关的扩展。

  5. 为大型项目配置工作区(Workspace): 如果你同时处理多个相关的Python项目,可以考虑使用VSCode的“工作区”功能。它允许你将多个项目文件夹组织到一个工作区中,并为每个项目配置独立的设置,这样VSCode可以更有效地管理资源。

常见运行问题及解决方案:

  1. “Python not found”或“ModuleNotFoundError”:

    • 问题根源: 最常见的原因是VSCode没有选择正确的Python解释器,或者你没有在当前激活的环境中安装所需的库。
    • 解决方案:
      • 检查解释器: 再次确认
        Ctrl+Shift+P
        -> “Python: Select Interpreter”中选择的是你期望的Python解释器,尤其是虚拟环境中的那个。
      • 安装依赖: 如果是
        ModuleNotFoundError
        ,请确保你已经激活了正确的虚拟环境,并运行了
        pip install -r requirements.txt
        pip install your_module_name
      • PYTHONPATH
        对于一些非标准目录下的模块,你可能需要在
        launch.json
        中配置
        "env": {"PYTHONPATH": "${workspaceFolder}/src"}
        来告诉Python去哪里找。
  2. 代码执行缓慢或卡顿:

    • 问题根源: 可能是代码本身效率低下,或者VSCode的某些后台任务(如Linter、Formatter)正在消耗大量资源。
    • 解决方案:
      • 检查代码: 确保你的Python代码没有死循环或效率极低的算法。
      • 资源监控: 打开系统的任务管理器或活动监视器,查看VSCode或Python进程的CPU和内存占用
      • 调整Linter/Formatter设置: 尝试将
        python.linting.lintOnSave
        设置为
        True
        ,而不是实时 linting。或者暂时禁用某些Linter。
      • 重启VSCode: 有时候,简单的重启就能解决内存泄漏或进程僵死的问题。
  3. 编码问题(例如中文乱码):

    • 问题根源: 文件编码与Python解释器默认编码不一致,尤其是在Windows系统上。
    • 解决方案:
      • 文件头部声明: 在Python文件的第一行或第二行添加
        # -*- coding: utf-8 -*-
      • 明确指定编码: 在打开文件时,始终使用
        open('file.txt', 'r', encoding='utf-8')
        明确指定编码。
      • VSCode默认编码: 在VSCode设置中,将
        files.encoding
        设置为
        utf8
  4. 调试器不命中断点:

    • 问题根源: 可能是代码与调试器期望的不符,或者配置有误。
    • 解决方案:
      • 保存文件: 确保你的文件已经保存。调试器运行的是保存后的代码。
      • 解释器匹配: 确认调试配置中使用的解释器与你期望的解释器一致。
      • justMyCode
        设置:
        launch.json
        中,
        "justMyCode": true
        会跳过第三方库的代码。如果你的断点在第三方库中,需要将其设置为
        false
      • 清除缓存: 有时
        __pycache__
        中的旧字节码文件会干扰调试,可以尝试删除项目中的
        __pycache__
        文件夹。

通过这些细致的调整和问题排查方法,你将能更好地驾驭VSCode,让它成为你Python开发过程中不可或缺的强大工具。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Python Flask框架
Python Flask框架

本专题专注于 Python 轻量级 Web 框架 Flask 的学习与实战,内容涵盖路由与视图、模板渲染、表单处理、数据库集成、用户认证以及RESTful API 开发。通过博客系统、任务管理工具与微服务接口等项目实战,帮助学员掌握 Flask 在快速构建小型到中型 Web 应用中的核心技能。

86

2025.08.25

Python Flask Web框架与API开发
Python Flask Web框架与API开发

本专题系统介绍 Python Flask Web框架的基础与进阶应用,包括Flask路由、请求与响应、模板渲染、表单处理、安全性加固、数据库集成(SQLAlchemy)、以及使用Flask构建 RESTful API 服务。通过多个实战项目,帮助学习者掌握使用 Flask 开发高效、可扩展的 Web 应用与 API。

72

2025.12.15

json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

419

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

535

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

311

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

77

2025.09.10

pip安装使用方法
pip安装使用方法

安装步骤:1、确保Python已经正确安装在您的计算机上;2、下载“get-pip.py”脚本;3、按下Win + R键,然后输入cmd并按下Enter键来打开命令行窗口;4、在命令行窗口中,使用cd命令切换到“get-pip.py”所在的目录;5、执行安装命令;6、验证安装结果即可。大家可以访问本专题下的文章,了解pip安装使用方法的更多内容。

339

2023.10.09

更新pip版本
更新pip版本

更新pip版本方法有使用pip自身更新、使用操作系统自带的包管理工具、使用python包管理工具、手动安装最新版本。想了解更多相关的内容,请阅读专题下面的文章。

414

2024.12.20

clawdbot ai使用教程 保姆级clawdbot部署安装手册
clawdbot ai使用教程 保姆级clawdbot部署安装手册

Clawdbot是一个“有灵魂”的AI助手,可以帮用户清空收件箱、发送电子邮件、管理日历、办理航班值机等等,并且可以接入用户常用的任何聊天APP,所有的操作均可通过WhatsApp、Telegram等平台完成,用户只需通过对话,就能操控设备自动执行各类任务。

14

2026.01.29

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.4万人学习

Node.js 教程
Node.js 教程

共57课时 | 9.6万人学习

CSS3 教程
CSS3 教程

共18课时 | 5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号