Python openpyxl:读写样式Excel一条龙,测试报表必备!
off999 2025-07-28 19:39 38 浏览 0 评论
无论你是测试工程师、数据分析师,还是想批量导出 Excel 的自动化工作者,只需一个库 openpyxl,即可高效搞定 Excel 的各种需求!
为什么选择 openpyxl?
支持 .xlsx 格式完整读写
支持 字体/颜色/边框/合并/公式/冻结窗格等格式控制
原生 Python,稳定、轻量,适合做工具类脚本
Excel 不再只是“办公软件”,它是你的自动化输出终端!
变化总是在发生
加油每一位
快速创建 Excel 文件(含样式)
from openpyxl import Workbook
from openpyxl.styles import Font, Alignment
wb = Workbook()
ws = wb.active
ws.title = "全国居民人均收入情况"
# 表头
ws.append(["指标", "2025年第一季度", "2024年第四季度", "2024年第三季度", "2024年第二季度"])
for cell in ws[1]:
cell.font = Font(bold=True)
cell.alignment = Alignment(horizontal="center")
# 数据行
ws.append(["居民人均可支配收入累计值(元)", 12179, 41314, 30941, 20733])
ws.append(["居民人均可支配收入累计增长(%)", 5.6, 5.1, 4.9, 5.3])
wb.save("全国居民人均收入情况.xlsx")
创建完成后打开 项目预算.xlsx,你会看到带样式的 Excel 表格!
读取已有 Excel 数据
from openpyxl import load_workbook
wb = load_workbook("全国居民人均收入情况.xlsx")
ws = wb["全国居民人均收入情况"]
for row in ws.iter_rows(min_row=2, values_only=True):
print(row)
输出示例:
('居民人均可支配收入累计值(元)', 12179, 41314, 30941, 20733)
('居民人均可支配收入累计增长(%)', 5.6, 5.1, 4.9, 5.3)可以用它来读取测试结果、日志汇总、接口返回数据。
实战技巧集锦(建议收藏)
样式设置完整示例(带边框、颜色)
from openpyxl import Workbook
from openpyxl.styles import Font, Alignment
from openpyxl.styles import Border, Side, PatternFill
wb = Workbook()
ws = wb.active
ws.title = "全国居民人均收入情况"
# 表头
ws.append(["指标", "2025年第一季度", "2024年第四季度", "2024年第三季度", "2024年第二季度"])
for cell in ws[1]:
cell.font = Font(bold=True)
cell.alignment = Alignment(horizontal="center")
# 数据行
ws.append(["居民人均可支配收入累计值(元)", 12179, 41314, 30941, 20733])
ws.append(["居民人均可支配收入累计增长(%)", 5.6, 5.1, 4.9, 5.3])
# 设置边框
thin = Side(border_style="thin", color="000000")
border = Border(left=thin, right=thin, top=thin, bottom=thin)
# 设置背景色
fill = PatternFill(fill_type="solid", start_color="C6EFCE")
for row in ws.iter_rows(min_row=2, max_row=3, min_col=2, max_col=5):
for cell in row:
cell.border = border
cell.fill = fill
wb.save("全国居民人均收入情况.xlsx")
用于:测试报告可视化 / 表格高亮 / 自动报表生成等场景。
多 Sheet 写入示例
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws.title = "全国居民人均收入情况"
sheet1 = wb.active
sheet1.title = "居民人均可支配收入累计值(元)"
sheet2 = wb.create_sheet("居民人均可支配收入累计增长(%)")
sheet1.append(["指标", "季度"])
sheet2.append(["指标", "涨幅"])
wb.save("全国居民人均收入情况_多sheet.xlsx")
实战:测试结果汇总写入 Excel
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
data = [
["task_id", "结果", "apk", "MD5"],
["33", "合规", "西平部落", "6062ea470914341b0f05781389c02b60"],
["186", "不合规", "微达家联网", '6c195026c735b724a3cd47370f65bdf8']
]
for row in data:
ws.append(row)
wb.save("检测结果.xlsx")
可以在接口自动化、pytest hook 后自动导出。
使用场景推荐
- 接口测试结果 → 自动汇总导出为 Excel
- 每日定时跑脚本 → 输出日志、统计表
- 渠道运营数据 → 自动生成数据报表
- Excel 模板生成 → 财务预算、日报、审计记录
福利打包:实用 openpyxl 小工具
你可以封装为如下函数方便调用:
def write_excel(file, sheet, data):
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws.title = sheet
for row in data:
ws.append(row)
wb.save(file)
使用
# 数据写入
data = [
["评估项", "结果", "数量"],
["个人信息处理原则", "不合规", 687],
["未按法律规定提供删除或更正个人信息功能或未公布投诉、举报方式等信息", "不合规", 497],
["未经用户同意收集使用个人信息", "不合规", 437],
["未公开收集使用规则", "不合规", 320],
["未明示收集使用个人信息的目的、方式和范围", "不合规", 212],
["未经同意向他人提供个人信息", "不合规", 73],
["违反必要原则,收集与其提供的服务无关的个人信息", "不合规", 62],
["个人信息处理活动中的个人权利", "不合规", 33],
]
write_excel("test.xlsx", "评估结果", data)如果你对接下来想看:
- Word 自动生成报告(python-docx)
- 自动发送邮件 + 附件
- 自动生成测试报告
如果你觉得有用,点赞关注不迷路,后续更新更多自动化测试经验,我们一起成长!欢迎评论区留言!
相关推荐
- win98安装教程(win98iso怎么安装)
-
如何安装windows98 一、具体安装步骤 备份好重要文件之后,就可以安装windows98了。 第一步:启动安装程序。 用户如果原来已安装了windows95/97/98,现在拟对其进行升...
- 雨林木风win7安装(雨林木风win732位安装教程)
-
安装步骤如下: 1、光盘放入光驱,复制光盘上的win7.gho和安装系统.exe到硬盘非C盘的文件夹;(gho文件名可以是其他名字,后缀为gho,体积最大的就是。) 2、双击安装系统.exe;...
- win10解绑管理员账户(win10管理员账户怎么取消开机密码)
-
要解除Windows10电脑上的管理员权限,您需要进行以下操作:1.打开“控制面板”:右键单击“开始”按钮,然后选择“控制面板”。2.进入“用户账户”:在控制面板中,选择“用户账户”。3.点击...
- win10家庭版没有组策略编辑器
-
Win10组策略编辑器找不到怎么办 解决方法 一、win10系统版本本身不提供组策略的功能。 1、运行gpedit.msc直接提示找到gpedit.msc(组策略)。 2、运行MMC,在“添加...
- tplogin管理员登录入口(tplogin重新设置密码)
-
tplogin.cn是新版tplink路由器的登录地址(管理页面地址),在浏览器中输入tplogin.cn,就可以打开tplink路由器的管理页面(登录页面)。具体的登录方法如下:1、打开电脑上的浏...
- psp模拟器怎么导入游戏(psp模拟器怎么导入游戏 Vivo手机)
-
方法如下:1、打开能操作文件的助手软件,用pp链接后点击左下文件,然后点常用目录下的程序用户,会出现ppsspp的文件夹。2、打开ppsspp文件夹,会出来四个选项文件夹,第一个进去后是psp文件夹,...
- 电脑系统怎样升级(电脑系统怎么升级)
-
电脑系统升级方法步骤,1、打开电脑,点击电脑左下角的开始菜单,在弹出的菜单选项中选择“控制面板”。2、点击“开始”,点击“控制面板”3、在控制面板中,点击“系统和安全”。4、点击启用或禁用自动更新。5...
- windows无法激活(windows无法激活有什么影响)
-
1.如果修复或重新组装了电脑,则可能是安装了不同版本的Windows。或者,如果在修复过程中为电脑使用了其他产品密钥,当使用该密钥的电脑数大于Microsoft软件许可条款允许的电脑数时,该密钥...
-
- u盘文件恢复软件免费(恢复u盘数据免费的软件)
-
u盘损坏文件恢复方法:1、打开电脑桌面的“计算机”或“我的电脑”。2、然后再找到需要修复的u盘。3、打开“运行”窗口(可以直接按“Windows+R”快捷打开),输入“CMD”并点击“确定”按钮以进入命令提符界面。4、从打开的“命令提示符”...
-
2025-12-28 22:03 off999
- 电脑uac是什么意思
-
UAC就是用户帐户控制,在对计算机进行更改之前,用户帐户控制(UAC)会通知您。比如安装软件驱动什么的,默认UAC设置会在程序尝试对计算机进行更改时通知您,但您可以通过调整设置来控制UAC...
- 笔记本找不到自己家的wifi怎么办
-
1.笔记本电脑缺少无线网卡驱动,需要下载驱动如果笔记本电脑开机之后,无法显示WiFi网络的图标,这个时候多半是因为电脑缺少无线网卡驱动造成的,有时候自己在清理电脑的时候,不小心清理了驱动程序,便会...
- 电信宽带办理电话是多少(电信宽带办理联系电话)
-
电信宽带不一定需要电信手机号码,可以根据自身需要选择,有单独的宽带业务,一般要求预存一定时间的使用费。不过一般包含了宽带、手机号码的融合套餐总体上更优惠,对客户来说更划算。如果有相应需求的话,建议同时...
欢迎 你 发表评论:
- 一周热门
-
-
抖音上好看的小姐姐,Python给你都下载了
-
全网最简单易懂!495页Python漫画教程,高清PDF版免费下载
-
Python 3.14 的 UUIDv6/v7/v8 上新,别再用 uuid4 () 啦!
-
飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx
-
python入门到脱坑 输入与输出—str()函数
-
宝塔面板如何添加免费waf防火墙?(宝塔面板开启https)
-
Python三目运算基础与进阶_python三目运算符判断三个变量
-
(新版)Python 分布式爬虫与 JS 逆向进阶实战吾爱分享
-
失业程序员复习python笔记——条件与循环
-
系统u盘安装(win11系统u盘安装)
-
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
