python 的 debug 模式,挺强大的
VScode 启动 python 程序,分为两种:
- 手动命令行,启动
编译命令,太过简单,
不能打断点
等同于 Run Without Debugging
![0ffe4251c3dc6f4aede93e33eceb44dc.png](https://img-blog.csdnimg.cn/img_convert/0ffe4251c3dc6f4aede93e33eceb44dc.png)
- 配置 VScode 的 launch.json,
给程序搭配一个调试器,
可以打断点
点击创建 launch.json
![e7de8330d2dfcac2dbc5665c03f268ff.png](https://img-blog.csdnimg.cn/img_convert/e7de8330d2dfcac2dbc5665c03f268ff.png)
.vscode/ launch.json
.vscode 文件夹下,
存放 vscode 相关的,项目文件
configurations 配置,
里面是一个数组,里面的每一项,是一个调试配置项,
意味着,可以有很多种的配置模式
经典的,一个用于本地调试,
一个用于远程调试
{
"version": "0.2.0",
"configurations": [
{
"name": "local",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/youtube_dl",
"console": "integratedTerminal",
"args": ["-F", "https://www.youtube.com/watch?v=LOBaqEgzvBM"]
}
]
}
- 一项配置,其中的 name, 相当于项目的 target
( Xcode 中 project 的 target )
![24ce9cca2e34a7ded46d72fb70345282.png](https://img-blog.csdnimg.cn/img_convert/24ce9cca2e34a7ded46d72fb70345282.png)
- 一项配置,其中的 type, 就是项目的语言环境
- 一项配置,其中的 program, 就是项目的执行入口
因为 youtube_dl 库的 __main__.py 文件,
就在主工程下面的 youtube_dl 文件夹里面,
"program": "${workspaceFolder}/youtube_dl",
- ${workspaceFolder},
vscode 中,开启的文件夹的路径
- ${file}
vscode 中,当前窗口,开启的文件
request 的种类,
有两种,
launch 和 attach
- launch , 仅需 1 方工作
- attach, 需要两方合作
命令行手动,开启服务,
本来不支持调试功能,
怎样给他添加调试功能?
使用 request 的 attach 模式
有一些应用程序,
启动后,
是不会结束执行的
( Web 服务器 )
开发 Web 服务,该 Web 服务器,会监听一个端口
浏览器,访问 3000 端口:
http://localhost:3000