DeepSeek 可以帮助编写生成工作簿的代码,实际 Excel 文件由本地 Python 写出。本例生成一个包含 details 和 summary 的工作簿:明细保存两条订单,汇总按地区计算金额,并重新读取检查结果。
准备输入与运行环境
Python 3.11,执行 python -m pip install pandas openpyxl。示例订单完全虚构,金额用“分”的整数表示,避免把二进制浮点误差当成金额;不要把代码文本保存为 .xlsx。

给 DeepSeek 的任务说明
请生成 Excel 工作簿 report.xlsx,details 保存虚构订单明细,summary 按 region 汇总 amount_cents。金额以整数分保存;编号保持字符串。用 ExcelWriter 写两个工作表,随后读回检查表名、明细行数和金额总和。不要覆盖已有文件。
在本地运行与检查
将下面代码保存为 example_05.py。进入保存该文件的目录,在终端执行 python example_05.py。代码应由你检查后执行,按实际字段修改。
from pathlib import Path
import pandas as pd
out = Path("report.xlsx")
if out.exists():
raise FileExistsError("report.xlsx 已存在,请换新文件名")
details = pd.DataFrame({"order_id": ["001", "002"], "region": ["East", "West"],
"amount_cents": [12500, 7500]})
summary = details.groupby("region", as_index=False)["amount_cents"].sum()
with pd.ExcelWriter(out, engine="openpyxl") as writer:
details.to_excel(writer, sheet_name="details", index=False)
summary.to_excel(writer, sheet_name="summary", index=False)
with pd.ExcelFile(out) as book:
assert set(book.sheet_names) == {"details", "summary"}
back = pd.read_excel(book, sheet_name="details", dtype={"order_id": "string"})
totals = pd.read_excel(book, sheet_name="summary")
assert len(back) == 2 and back["order_id"].tolist() == ["001", "002"]
assert back["amount_cents"].sum() == totals["amount_cents"].sum() == 20000
print(out.resolve(), "details", len(back), "total_cents", totals["amount_cents"].sum())
把实际数据放在哪里
替换 details 的数据即可,先确认每行是一笔订单。币种不同的订单不能直接相加,应把币种也作为分组键。输出字段写 amount_cents 是提醒读者金额单位为分;若展示为元,单独创建展示列并保持计算口径一致。
为什么要读回工作簿
写入未报错只能说明文件创建过程完成。读回可以发现表名写错、编号类型变化或总额不符;打开 Excel 后再查看列宽、金额单位和是否意外多出索引列。这里 index=False 避免把行索引写成额外数据列。
怎样确认结果正确
程序应生成 report.xlsx,details 有 2 行,summary 的 East 为 12500 分、West 为 7500 分,总计 20000 分。打开两个工作表检查名称与单位,编号 001、002 保持原样;重新读取的断言全部通过后才把文件发给同事。
适用边界与常见问题
这是本地双工作表生成演示,不代表 DeepSeek 网页必定提供可下载附件,也没有模拟真实订单、公式模板或宏。读取已有 Excel 的公式值、格式和合并单元格有额外规则,不能据此保证复杂模板原样保留。
资料依据
接口说明核验日期:2026 年 10 月 1 日。pandas Excel I/O;pandas 分组接口。
Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/30150.html