Python实现word的基本操作

简介: Python实现word的基本操作

问题描述

众所周知python有很多第三方库,这也是python简单实用的原因,有时用python处理word文档就需要安装python-docx库。

解决方案

1 安装python-docx

首先找到python根目录(就是有python.exe的文件夹)打开Scripts文件夹

Shift+鼠标右键选择在此处打开powershell窗口或者cmd窗口输入pip install python-docx按下回车等待安装完成。

2 基本操作语法

2.1打开文档

document = Document()

不填默认为新建一个文档

2.2加入不同等级的标题

document.add_heading(u'总标题',0)
document.add_heading(u'一级标题',1)
document.add_heading(u'二级标题',2)

2.3添加文本

paragraph = document.add_paragraph(u'文本内容')

2.4设置字号

run = paragraph.add_run(u'设置字号、')
run.font.size = Pt(24)

2.5设置英文字体

run = paragraph.add_run('Set Font,')
run.font.name = 'Consolas'

2.6设置中文字体

run = paragraph.add_run(u'设置中文字体、')
run.font.name=u'宋体'
r = run._element
r.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')

2.7设置斜体

run = paragraph.add_run(u'斜体、')
run.italic = True

2.8 设置粗体

run = paragraph.add_run(u'粗体').bold = True

2.9增加引用

document.add_paragraph('Intense quote',  style='Intense Quote')

2.10 增加列表

document.add_paragraph(
    u'无序列表元素1',  style='List Bullet'
)
document.add_paragraph(
    u'无序列表元素2', style='List  Bullet'
)

 

Style='List Bullet'为无序

Style='List Number'为有序

2.11添加图片

document.add_picture('1.png',  width=Inches(1.25))

1.png为图片名称(必须与代码文件在同一个文件夹内)

2.12增加表格

table = document.add_table(rows=1,  cols=3)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Name'
hdr_cells[1].text = 'Id'
hdr_cells[2].text = 'Desc'

2.13 再增加3行表格元素

for i in range(3):
    row_cells = table.add_row().cells
    row_cells[0].text = 'test'+str(i)
    row_cells[1].text = str(i)
    row_cells[2].text = 'desc'+str(i)

2.14增加分页

document.add_page_break()

2.15保存文件

document.save(u'测试.docx')

3 完整代码

from docx import Document
from docx.shared import Pt
from docx.shared import Inches
from docx.oxml.ns import qn



document = Document()
document.add_heading(u'MS WORD写入测试',0)
document.add_heading(u'一级标题',1)
document.add_heading(u'二级标题',2)
paragraph = document.add_paragraph(u'我们在做文本测试!')
run = paragraph.add_run(u'设置字号、')
run.font.size = Pt(24)
run = paragraph.add_run('Set Font,')
run.font.name = 'Consolas'
run = paragraph.add_run(u'设置中文字体、')
run.font.name=u'宋体'
r = run._element
r.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
run = paragraph.add_run(u'斜体、')
run.italic = True
run = paragraph.add_run(u'粗体').bold = True
document.add_paragraph('Intense quote', style='Intense Quote')
document.add_paragraph(
    u'无序列表元素1',  style='List Bullet'
)
document.add_paragraph(
    u'无序列表元素2',  style='List Bullet'
)
document.add_paragraph(
    u'有序列表元素1',  style='List Number'
)
document.add_paragraph(
    u'有序列表元素2',  style='List Number'
)
document.add_picture('1.png', width=Inches(1.25))
table = document.add_table(rows=1, cols=3)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Name'
hdr_cells[1].text = 'Id'
hdr_cells[2].text = 'Desc'
for i in range(3):
    row_cells = table.add_row().cells
    row_cells[0].text = 'test'+str(i)
    row_cells[1].text = str(i)
    row_cells[2].text = 'desc'+str(i)
document.add_page_break()
document.save(u'测试.docx')

4 生成效果

目录
相关文章
|
2月前
|
XML 数据格式 Python
从手动编辑到代码生成:Python 助你高效创建 Word 文档
本文介绍如何用Python实现Word文档自动化生成,结合python-docx、openpyxl和matplotlib库,高效完成报告撰写、数据插入与图表生成,大幅提升办公效率,降低格式错误,实现数据驱动的文档管理。
512 2
|
5月前
|
XML Linux 区块链
Python提取Word表格数据教程(含.doc/.docx)
本文介绍了使用LibreOffice和python-docx库处理DOC文档表格的方法。首先需安装LibreOffice进行DOC到DOCX的格式转换,然后通过python-docx读取和修改表格数据。文中提供了详细的代码示例,包括格式转换函数、表格读取函数以及修改保存功能。该方法适用于Windows和Linux系统,解决了老旧DOC格式文档的处理难题,为需要处理历史文档的用户提供了实用解决方案。
541 1
|
4月前
|
监控 Linux 数据安全/隐私保护
Python实现Word转PDF全攻略:从入门到实战
在数字化办公中,Python实现Word转PDF自动化,可大幅提升处理效率,解决格式兼容问题。本文详解五种主流方案,包括跨平台的docx2pdf、Windows原生的pywin32、服务器部署首选的LibreOffice命令行、企业级的Aspose.Words,以及轻量级的python-docx+pdfkit组合。每种方案均提供核心代码与适用场景,并涵盖中文字体处理、表格优化、批量进度监控等实用技巧,助力高效办公自动化。
1177 0
|
5月前
|
Python
Python 办公实战:用 python-docx 自动生成 Word 文档
本文详解如何使用 python-docx 库实现 Word 文档自动化生成,涵盖环境搭建、文档创建、格式设置、表格与图片处理、模板填充、批量生成及性能优化等实战技巧,助你高效完成办公场景中的文档自动化任务。
1445 1
|
Python
办公自动化-Python如何提取Word标题并保存到Excel中?
办公自动化-Python如何提取Word标题并保存到Excel中?
293 2
|
人工智能 开发者 Python
python读取word文档 | AI应用开发
在RAG系统中,构建知识库时需读取多种外部文档,其中Word文档较为常见。本文介绍如何使用`python-docx`库读取Word文档(.docx格式)中的标题、段落、表格和图片等内容。首先通过`pip install python-docx`安装库,然后利用提供的接口提取所需信息。尽管该库功能强大,但在识别标题样式时需自定义逻辑,并且仅提供图片的URI而非直接加载。示例代码展示了读取文本、识别标题、读取表格及获取图片URI的方法。【10月更文挑战第2天】
795 2
|
Linux Python Windows
Python PDF文件转Word格式,只需要3秒(附打包)
Python PDF文件转Word格式,只需要3秒(附打包)
435 3
Python PDF文件转Word格式,只需要3秒(附打包)
|
XML 存储 数据格式
使用Python的zipfile模块巧解Word批量生成问题
通过以上步骤,我们得到了填充了特定数据的 Word 文档。这个过程可以通过循环对多个数据集重复执行,从而实现批量生成多个 Word 文档的目标。
213 5
|
IDE 开发工具 Python
Python自动化操作word--批量替换word文档中的文字
Python自动化操作word--批量替换word文档中的文字
792 0
|
Python
Python——将PPT和Word转为PDF文件
Python——将PPT和Word转为PDF文件
329 1

推荐镜像

更多