当前位置: 首页 > news >正文

VSCode终极版 - 详解

VSCode与其他编辑器的设计理论不同

# VSCode 的设计理念
- 轻量级编辑器 + 插件生态
- 高度可定制,但需要配置
- 适合各种语言和场景(因此看起来配置比较多),VSCode 的强大在于"可选配置",不是"必须配置"
# vs 传统 IDE(如 PyCharm)
- 重量级集成开发环境
- 开箱即用,定制性有限
- 主要针对特定语言

在VSCode中配置Python环境

  1. 安装Python 解释器,官网下载:https://www.python.org/downloads/
  2. vscode插件:
    • Python 扩展(官方)
    扩展名称:Python
    发布者:Microsoft
    ID:ms-python.python
  3. 使用
    3.1 创建虚拟环境:Ctrl+Shift+P → “Python: Create environment”
    3.2 选择 Python 解释器:Ctrl+Shift+P → “Python: Select Interpreter”,选择虚拟环境中的 Python解释器。
  4. 进入虚拟环境的核心步骤:cd 到项目目录,运行 source .venv/bin/activate(Linux/Mac系统)
    注意: 激活只影响当前终端会话,每次新开终端都需要重新激活。VSCode等IDE会自动处理这个过程。
  5. 安装Code runner(可选)
    为方便起见,可以安装CodeRunner插件,一键运行Python代码

调试

.vscode/launch.json 是 VSCode 的调试配置文件,用来定义如何运行和调试你的代码。

launch.json文件位置和作用

也可以不配置这个文件,对于大多数日常调试任务,默认调试完全够用! 只有遇到特殊需求(比如机器学习项目需要输入数据文件等)或复杂项目时才需要配置 launch.json。

项目目录/
├── .vscode/
│   ├── launch.json      # 调试配置
│   ├── settings.json    # 编辑器设置
│   ├── tasks.json       # 任务配置
│   └── extensions.json  # 推荐扩展
├── src/
└── main.py

基本结构

{
"version": "0.2.0",           // 配置文件版本
"configurations": [            // 调试配置数组
{
"name": "配置名称",
"type": "调试器类型",
"request": "启动方式",
"program": "程序路径"
}
],
"compounds": [                 // 复合调试配置
{
"name": "复合配置名称",
"configurations": ["配置1", "配置2"]
}
]
}

最简单的配置

{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}

创建和编辑 launch.json

# 方法1:通过调试面板
1. 按 Ctrl+Shift+D 打开调试面板
2. 点击"创建 launch.json 文件"
3. 选择调试器类型(Python)
4. 选择配置模板
# 方法2:通过命令面板
Ctrl+Shift+P → "Debug: Open launch.json"

为什么有两个调试类型?

# 传统调试器 (type: "python")
- 基于 ptvsd 包
- 调试速度较慢
- 功能相对基础
- 兼容性好
# 新调试器 (type: "debugpy")  
- 基于 debugpy 包
- 调试速度更快
- 功能更丰富
- 支持更多特性
http://www.jsqmd.com/news/84002/

相关文章:

  • 七自由度车辆动力学Matlab Simulink仿真模型探究:Dugoff轮胎模型的奇妙之旅
  • WebSocket概念原理及使用注意事项 - 实践
  • 30 * 7 = 210
  • 高级语言程序设计第九次作业
  • 墨菲安全MurphySec:5分钟快速上手的软件供应链安全检测工具
  • CSAPP cachelab
  • 全漏洞笔记--一些基本知识
  • 江苏抗台风抗风卷帘门厂家排名前十有哪些 - 品牌排行榜
  • Ink/Stitch 开源刺绣设计软件:免费教程与完整使用指南
  • nmap你看我这篇就够了
  • 从微信红包延迟看超级应用高并发下的数据一致性攻坚
  • 我已经完全爱上沃玛了!
  • JavaScript 词法作用域(Lexical Scoping)与 变量提升(Hoisting):从执行上下文初始化阶段看函数与变量的创建序
  • Livox-SDK2深度解析:激光雷达开发的高效实战指南
  • VLAN配置实验报告
  • 为什么我一开始就对“短信验证码”保持高度警惕
  • 3G期末考核题解
  • GPT的前世今生
  • 【瑞萨RA × Zephyr评测】spi(ssd1306屏)
  • 逻辑回归简介
  • 半吊子投标人太让人崩溃了
  • JavaScript 的垃圾回收对实时图形(60FPS)的影响:如何编写‘零 GC’代码实现物理引擎的稳帧运行
  • 汽车 KMS 如何支撑百万级 ECU 的密钥生命周期管理?
  • 5个实用技巧:如何快速掌握JVM核心机制?
  • flask基础知识深入——会话管理:Flask Session从原生到扩展源码分析及使用
  • 动态脱敏在微服务网关中的实现原理
  • ts-morph 文件系统终极指南:内存与真实文件系统的深度解析
  • 边缘计算中的 JavaScript Isolates 架构:对比 Docker 容器在冷启动延迟、内存占用与多租户隔离上的优势
  • 如何快速配置Malcolm:网络流量分析的完整指南
  • c语言之pinblock-format2计算代码示例