从基础到进阶详解Python处理Word文档的完全指南
所需库及安装
在开始之前,需要安装以下Python库:
- python-docx:用于创建和修改Word文档
- docxtpl:用于基于模板填充Word文档
- docxcompose:用于合并多个Word文档
- lxml:XML处理库
可以通过pip安装:
|
1 |
|
或者使用uv:
|
1 |
|
1. 基础操作
1.1 创建和保存文档
使用python-docx创建文档非常简单:
|
1 2 3 4 |
|
1.2 设置中文字体
默认字体对中文支持不佳,需要单独设置中文字体:
|
1 2 3 4 5 6 7 8 9 |
|
注意:保存文件时,文件不能被打开,否则会报PermissionError错误。
1.3 导入现有文档
|
1 |
|
注意事项:
- 必须是标准docx文件,不能是doc文件
- 不能是strict open XML格式
1.4 遍历文档内容
|
1 2 3 4 5 6 7 8 9 10 |
|
2. 文档格式设置
2.1 小标题
|
1 2 |
|
注意:需要文档里有对应的标题样式,否则会报错。
2.2 段落处理
添加段落
|
1 2 |
|
首行缩进
首行缩进2字符:
|
1 2 3 |
|
首行缩进固定距离:
|
1 |
|
段落对齐
|
1 2 |
|
删除段落
|
1 2 |
|
换行处理
|
1 2 3 4 5 6 |
|
常用段落格式
|
1 2 3 4 5 6 7 |
|
2.3 字符格式设置
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
2.4 表格处理
创建表格
|
1 2 |
|
填充单元格
|
1 2 3 4 5 6 7 8 |
|
获取可用表格样式
|
1 2 3 4 5 |
|
增加和删除行
|
1 2 3 4 5 6 7 8 9 |
|
批量填充数据
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
合并单元格
|
1 |
|
表格格式设置
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
2.5 图片处理
插入图片
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
2.6 分页符
|
1 |
|
2.7 样式管理
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
3. 使用docxtpl进行模板填充
docxtpl可以将Word文档制作成模板,实现数据自动填充。
3.1 创建模板
首先创建一个包含占位符的Word模板,占位符使用双花括号{{}}包裹。
3.2 填充模板
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
|
4. 进阶功能
4.1 表格高级操作
设置单元格边框
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
|
4.2 超链接
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
4.3 图片高级操作
提取文档中的图片
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
插入浮动图片
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
|
4.4 分栏
|
1 2 3 4 5 |
|
4.5 页眉页脚
|
1 2 3 4 5 6 7 8 9 10 |
|
4.6 目录
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
|
4.7 文档合并
|
1 2 3 4 5 6 7 8 |
|
注意:合并文档时,后面的文档会跟随第一个文档的格式。
总结
本文介绍了Python处理Word文档的完整流程,包括:
- 使用python-docx进行基础的文档创建、编辑和格式化
- 使用docxtpl实现基于模板的自动化数据填充
- 使用docxcompose合并多个Word文档
- 各种进阶功能如设置单元格边框、插入超链接、提取图片、设置页眉页脚等
这些技术可以广泛应用于自动化报告生成、批量文档处理、合同模板填充等场景,大大提高工作效率。
更多推荐


所有评论(0)