当前位置:首页>python>Python开发从零开始-50.2-Office 文档处理

Python开发从零开始-50.2-Office 文档处理

  • 2026-10-11 06:07:33
Python开发从零开始-50.2-Office 文档处理

接上文Python开发从零开始-50.1-Office 文档处理,本文小编与大家分享 Python 处理 Office 文档的相关知识。

(四)python-docx 库的基本使用

1、创建和保存 Word 文档(.docx)

可以通过 docx.Document 对象的无参构造方法创建一个新的文档,使用 docx.Document 对象的 save() 方法来保存文档。创建和保存 Word 文档的代码示例如下所示:

from docx import Document# 创建一个新的文档doc = Document()# 保存文档doc.save('example.docx')

2、打开已有 Word 文档

可以使用 docx.Document 对象带文件名参数的构造方法打开已有 Word 文档。打开已有 Word 文档的代码示例如下所示:

from docx import Document# 打开一个已有文档doc = Document('example.docx')

3、打开 Word 文档并添加内容

(1)添加标题

docx.Document 对象的 add_heading() 方法用于在文档末尾添加标题。添加标题的示例代码如下所示:

# 添加标题heading = doc.add_heading('这是一个标题', 0)

(2)添加段落

docx.Document 对象的 add_paragraph() 方法用于在文档末尾添加文本段落。添加段落的示例代码如下所示:

# 添加段落para1 = doc.add_paragraph('这是文档的第一个段落。')

(3)在段落中添加运行(Run)

docx.text.paragraph.Paragraph 对象的 add_run() 方法用于在该段落末尾添加 “运行”。“运行” 指的是段落中从开始到结束的一段连续的文本,这段文本具有相同的样式(例如字体、大小、颜色等)。添加段落运行的示例代码如下所示:

# 在 para1 段落中添加一个运行(Run)run = para1.add_run("这是新添加的运行(Run)")

(4)添加图片

docx.Document 对象的 add_picture() 方法用于在文档末尾添加图片,该方法支持指定图片尺寸(宽度和高度),但是只接受 docx.shared 子模块中的单位对象(如 Inches、Cm、Pt 等),不能使用数值表示尺寸。添加图片的示例代码如下所示:

# 添加图片pic = doc.add_picture('dog.png', width=Inches(1.25))

docx.shared.Inches 对象的有参构造方法用于将英寸浮点数值转换为内部长度单位(Twips),专用于赋值给文档属性(如页宽、图片尺寸等)。‌‌

(5)添加表格

docx.Document 对象的 add_table() 方法用于在文档末尾添加表格。添加表格的示例代码如下所示:

# 添加表格table = doc.add_table(rows=2, cols=2)table.cell(0, 0).text = '行1列1'table.cell(0, 1).text = '行1列2'table.cell(1, 0).text = '行2列1'table.cell(1, 1).text = '行2列2'

(6)添加节

docx.Document 对象的 add_section() 方法用于在文档末尾添加新节。添加新节的示例代码如下所示:

# 添加新节section = doc.add_section()

打开 Word 文档并添加内容的完整代码如下所示:

from docx import Documentfrom docx.shared import Inchesimport os# 为方便学习和调试,使用文件是否存在的判断逻辑filename = 'example.docx'if os.path.exists(filename):    # 打开一个已存在的文档    doc = Document(filename)else:    # 创建一个新的文档    doc = Document()# 添加标题heading = doc.add_heading("这是一个标题", 0)# 添加段落para1 = doc.add_paragraph("这是第一个段落。")# 在 para1 段落中添加一个运行(Run)run = para1.add_run("这是新添加的运行(Run)")# 添加图片pic = doc.add_picture('dog.png', width=Inches(1.25))# 添加表格table = doc.add_table(rows=2, cols=2)table.cell(0, 0).text = '行1列1'table.cell(0, 1).text = '行1列2'table.cell(1, 0).text = '行2列1'table.cell(1, 1).text = '行2列2'# 添加新节section = doc.add_section()# 保存文档doc.save(filename)

受文章篇幅所限,下文将继续介绍 Python 处理 Office 文件‌的相关知识。

最新文章

随机文章