编辑器与IDE:完整实践与解答
需能阅读 Python、JSON 和文件路径。以求和工作区为例,先打开包含 total.py 与 input.json 的目录,再对照 tasks/launch 的参数与 cwd;程序依赖 Python 3.11+,调试另需 VS Code Python Debugger 扩展。 示例未在本轮执行;本页完整源码与README列出输入、阅读顺序和预期。
IDE 完整工作区
IDE完整工作区包含settings、tasks、launch和一份纯Python计算程序。示例未执行;标准库可运行程序不等于调试扩展已可用,README分别说明这两个前置。
IDE 断点练习
题目:任务从仓库根启动,输入文件在示例子目录,相对路径为何失败?
参考答案
相对路径由cwd解释,而不是代码文件位置;把输入路径作为显式参数,或配置cwd为该示例目录。
IDE 配置恢复
IDE配置恢复先撤回自己的工作区设置差异,不重置所有用户设置。清理复制目录即可移除本例;检查.vscode文件是否含本机绝对路径,防止把可共享配置变成机器绑定。
完整源码、配置与输入
下列文件与仓库同源,包含完整实现和输入;不是运行证明。部分练习只需人工阅读配置,不强制构造模拟器。
.editorconfig
text
root = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 4.vscode/settings.json
json
{
"files.encoding": "utf8",
"files.eol": "\n",
"editor.insertSpaces": true,
"editor.tabSize": 4,
"files.exclude": {
"**/__pycache__": true
}
}.vscode/tasks.json
json
{
"version": "2.0.0",
"tasks": [
{
"label": "course-total",
"type": "process",
"command": "python",
"args": [
"${workspaceFolder}/total.py",
"${workspaceFolder}/input.json"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": []
}
]
}.vscode/launch.json
json
{
"version": "0.2.0",
"configurations": [
{
"name": "Inspect total",
"type": "debugpy",
"request": "launch",
"program": "${workspaceFolder}/total.py",
"args": [
"${workspaceFolder}/input.json"
],
"cwd": "${workspaceFolder}",
"console": "integratedTerminal",
"justMyCode": true
}
]
}total.py
python
import json
import sys
from pathlib import Path
def total(values):
if not isinstance(values, list) or any(type(v) is not int for v in values):
raise ValueError("expected a list of integers")
return sum(values)
if __name__ == "__main__":
try:
if len(sys.argv) != 2:
raise ValueError("usage: python total.py input.json")
values = json.loads(Path(sys.argv[1]).read_text(encoding="utf-8"))
print(total(values))
except (ValueError, OSError) as exc:
print(str(exc), file=sys.stderr)
sys.exit(2)input.json
json
[2, 3, 5]requirements.txt
text
# Python 3.11+ standard library for total.py.
# VS Code Python Debugger extension (debugpy adapter) for launch.json only.
# No extension was installed or adapter run for this lesson.项目README与完整依赖
README提供前置、完整自跑或阅读方式、预期、失败案例与恢复清理。本轮没有执行任何示例、产品CLI、模型或外部API。
markdown
# 编辑器与IDE:完整教学包
示例未执行。全部输入为教学虚构资料,不能用于真实账号、生产数据或外部系统。
## 前置与依赖
Python3.11以上;任务用python,Linux需要时读者修改为python3;调试另需VS Code Python Debugger扩展。
## 文件与输入
- `.editorconfig`:本包完整文件。
- `.vscode/settings.json`:本包完整文件。
- `.vscode/tasks.json`:本包完整文件。
- `.vscode/launch.json`:本包完整文件。
- `total.py`:本包完整文件。
- `input.json`:本包完整文件。
- `requirements.txt`:本包完整文件。
## 读者将来自跑或阅读
复制本包所有文件到独立目录,在该目录作为当前工作目录。以下是读者自用资料,本轮禁止执行。
```text
python total.py input.json
```
## 正常预期
标准输出10;VS Code任务course-total使用工作区绝对输入,调试配置可在total函数设置断点。
## 失败案例与恢复
把input.json改为[2,true],预期退出2并报告expected a list of integers;debugpy未安装时调试会话不可用。
## 清理及能力边界
必须把本例目录作为工作区打开;撤回工作区设置差异即可恢复。无网络、无端口。
## 来源
- [官方依据](https://code.visualstudio.com/docs/reference/variables-reference)(2026-10-17资料核对;不是运行证明)依据与适用范围
- 本课官方依据,资料核对日2026-10-17。
本课完成的是列明任务的理论与静态资料,不代表产品全部能力或三平台运行通过。历史文档保留旧URL;涉及账号、版本、价格与界面位置时,以对应官方资料及实际授权环境为准。
继续阅读
- 编辑器与IDE上手与对象
- 编辑器与IDE上手与对象
- 编辑器与IDE上手与对象