ARTICLE DETAIL

资讯详情

深耕商务建站与企业官网运营的一线实战洞察。

Vibe Coding 实操复盘:60 分钟用 AI 写完 Excel 报表 + FastAPI 记账接口

Vibe Coding 实操复盘:60 分钟用 AI 写完 Excel 报表 + FastAPI 记账接口 本文记录我在 60 分钟限时考核中用上述方法完成两个 Python 任务的完整过程。二、考题概览三、考题一Excel 报表3.1 需求澄清交给 AI 之前我先把需求写成一段契约text复制下载输入sales_raw.xlsx日期/销售员/产品/数量/单价/地区 输出report.xlsx明细清洗后 / 按销售员 / 按地区 / 总览 清洗规则剔关键字段缺失 → 剔数量0 → 全字段去重 派生销售额 数量 × 单价 汇总按销售员、按地区、按月 边界文件不存在/空/缺列/全脏 → 中文报错 非 0 退出码 约束绝不修改原文件3.2 让 AI 拆任务而不是写代码我先别写代码帮我把这个需求拆成 4~5 个可验证的小步。AI 给出读校验 → 清洗 → 派生 → 聚合 → 写出。我采纳并补上打印每步剔除行数以便验证。3.3 Code Review 三处修正#AI 第一版问题我的修正1只对数量做to_numeric补上单价2直接df.to_excel()覆盖改ExcelWriter上下文3业务异常用raise Exception统一ReportError 中文提示3.4 关键代码片段python复制下载df[数量] pd.to_numeric(df[数量], errorscoerce) df[单价] pd.to_numeric(df[单价], errorscoerce) df df.dropna(subset[日期, 销售员, 数量, 单价]) df df[df[数量] 0].drop_duplicates() df[销售额] (df[数量] * df[单价]).round(2)四、考题二FastAPI 记账接口4.1 先写接口契约MethodPath说明POST/records新增校验金额/类型/日期GET/records按 type/category/start/end 筛选 分页GET/summary收入/支出/结余4.2 用 Pydantic 做第一道防线python复制下载class RecordIn(BaseModel): amount: float Field(..., gt0) type: Literal[收入, 支出] category: str date: date任何不合法的输入FastAPI 自动返回 422 结构化错误无需手写。4.3 并发安全内存存储用threading.Lock保护add()和 ID 自增读取时做快照避免迭代中被改。python复制下载def add(self, rec): with self._lock: rid self._next_id self._next_id 1 self._data[rid] {id: rid, **rec.model_dump()} return self._data[rid]4.4 测试覆盖python复制下载def test_create_zero_amount(): # 边界金额为 0 r client.post(/records, json{..., amount: 0}) assert r.status_code 422 def test_create_bad_type(): # 边界类型非法 ... def test_summary_bad_range(): # 边界start end ...text复制下载7 passed in 0.32s五、AI 协作的经验总结✅ 这样做效率高❌ 这样做会翻车 必须人工把关的 4 件事六、结语Vibe Coding 的本质是让 AI 承担体力活人专注于判断与决策。真正决定交付质量的从来不是 AI 生成的代码而是你交给 AI 的需求清晰度以及你对 AI 输出的审查深度。完整源码结构text复制下载vibe_coding_exam/ ├── task1_excel/report.py ├── task2_fastapi/{main,storage,schemas}.py ├── task2_fastapi/tests/test_api.py └── run_all.sh一条命令跑通全部一、什么是 Vibe CodingVibe Coding 不是让 AI 替我写代码而是用自然语言指挥 AI 完成工程任务的一种协作方式。核心能力有三点需求澄清在敲第一个字符前先把目标、输入输出、边界、验收标准写清楚。任务拆解把大需求拆成可独立运行、可独立验证的小步。过程管理每一步都跑通再进下一步对 AI 输出做 Code Review关键节点人工接管。考题一Excel 报表脚本 —— 读sales_raw.xlsx清洗 统计输出含 4 个 Sheet 的report.xlsx考题二FastAPI 记账接口 —— POST/GET/SUMMARY 三个接口带校验、分页、汇总让 AI拆任务而不是让 AI一把梭写全部。每一步都跑通再进下一步避免错误堆叠。让 AI 生成样板代码Pydantic 模型、pytest 骨架、pandas 链式聚合。让 AI 帮你列边界清单然后你来筛选。一次性让 AI 写完整项目 → 出错后不知道从哪查。不做 Code Review 直接跑 → 静默错误如字符串单价参与乘法。让 AI 决定业务边界金额能否小数、时区怎么处理→ 结果不符合预期。让 AI 自由重构 → 范围失控改坏无关模块。数据一致性类型转换、空值处理、单位统一。并发与幂等锁、自增 ID、重复提交。输入校验范围、格式、枚举、注入风险。副作用文件写入、数据库提交、网络调用是否可回滚。
返回列表
PREV
查看更多资讯
NEXT
返回资讯列表