别再问我 Python 怎么操作 Word 了!

本文介绍了如何使用Python的docx库来操作Word文档,包括安装、读取和写入文档,处理段落、文字块和表格,以及设置文本样式。此外,还提供了学习资源和面试题,帮助读者提升Python办公自动化能力。

前言

今天我们将通过代码讲解 Python 操作 Word 文档 docx 的常用方法。

安装

docx 是一个非标准库,需要在命令行 (终端) 中使用 pip 即可安装

pip install python-docx

一定要注意,安装的时候是 python-docx 而实际调用时均为 docx!

前置知识

Word 中一般可以结构化成三个部分:

  • 文档 Document
  • 段落 Paragraph
  • 文字块 Run

也就是 Document - Paragraph - Run 三级结构,这是最普遍的情况。其中文字块Run 最难理解,并不能完成按照图中所示,两个符号之间的短句是文字块。

通常情况下可以这么理解,但假如这个短句子中有多种不同的 样式,则会被划分成多个文字块,以图中的第一个黄圈为例,如果给这个短句添加一些细节👇此时就有 4 个文字块,同时有时候一个 Word 文档中是存在表格的,这时就会新的文档结构产生这时的结构非常类似 Excel,可以看成 Document - Table - Row/Column - Cell 四级结构

Word 读取

1. 打开 Word
from docx import Document
path = ...
wordfile = Document(path)
2. 获取段落

一个 word 文件由一个或者多个 paragraph 段落组成

paragraphs = wordfile.paragraphs 
print(paragraphs)
3. 获取段落文本内容

.text 获取文本

for paragraph in wordfile.paragraphs: 
    print(paragraph.text)
4. 获取文字块文本内容

一个 paragraph 段落由一个或者多个 run 文字块组成

for paragraph in wordfile.paragraphs: 
    for run in paragraph.runs: 
        print(run.text)
5. 遍历表格

上面的操作完成的经典三级结构的遍历,遍历表格非常类似

# 按行遍历
for table in wordfile.tables:
    for row in table.rows:
        for cell in row.cells:
            print(cell.text)
       
# 按列遍历     
for table in wordfile.tables:
    for column in table.columns:
        for cell in column.cells:
            print(cell.text)

写入 Word

1. 创建 Word

只要不指定路径,就默认为创建新 Word 文件

from docx import Document
wordfile = Document() 
2. 保存文件

对文档的修改和创建都切记保存

wordfile.save(...)
... 放需要保存的路径
3. 添加标题

wordfile.add_heading(…, level=…)

4. 添加段落

wordfile.add_paragraph(...)

wordfile = Document() 
wordfile.add_heading('一级标题', level=1) 
wordfile.add_paragraph('新的段落')
5. 添加文字块

wordfile.add_run(...)

6. 添加分页

wordfile.add_page_break(...)

7. 添加图片

wordfile.add_picture(..., width=…, height=…)

设置样式

1. 文字字体设置

2. 文字其他样式设置
from docx import Document
from docx.shared import RGBColor, Pt

wordfile = Document(file)
for paragraph in wordfile.paragraphs:
    for run in paragraph.runs:
        
        run.font.bold = True  # 加粗 
        run.font.italic = True # 斜体 
        run.font.underline = True # 下划线 
        run.font.strike = True # 删除线 
        run.font.shadow = True # 阴影 
        run.font.size = Pt(20) # 字号 
        run.font.color.rgb = RGBColor(255, 0, 0) # 字体颜色
3. 段落样式设置

默认对齐方式是左对齐,可以自行修改

小结

以上就是如何用 Python 中的 docx 模块实现 Word 中的常用操作,只要明白什么类型的操作可以用 Python 执行,并能在之后遇到繁琐的任务时想到使用 Python 即可,以下是几个利用该模块实现办公自动化的案例,希望能够对你有所帮助。

这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!

CSDN大礼包:全网最全《全套Python学习资料》免费分享🎁

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉CSDN大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述
因篇幅有限,仅展示部分资料

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述
在这里插入图片描述
上述所有资料 ⚡️ ,朋友们如果有需要 📦《全套Python学习资料》的,可以扫描下方二维码免费领取 🆓
😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓

👉CSDN大礼包🎁:全网最全《Python学习资料》免费分享(安全链接,放心点击)👈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值