pythondocxrun断开_别再问我python怎么操作Word了!
原标题:别再问我python怎么操作Word了!
作者:陈熹
来源:早起Python
在之前的⾃动化系列⽂章中,我们分别讲解过python操作Excel利器openpyxl,也讲过python操作PDF的⼏种⽅式,今天我们将通过代码讲解Python操作Word⽂档docx的常⽤⽅法。
python怎么读文件安装
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:
)
4. 获取⽂字块⽂本内容
⼀个paragraph段落由⼀个或者多个run⽂字块组成
for paragraph in wordfile.paragraphs:
for run in paragraph.runs:
)
5. 遍历表格
上⾯的操作完成的经典三级结构的遍历,遍历表格⾮常类似# 按⾏遍历
for table in wordfile.tables:
for row ws:
for cell lls:
)
# 按列遍历
for table in wordfile.tables:
for column lumns:
for cell lls:
)
写⼊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) # 字号
b = RGBColor(255, 0, 0) # 字体颜⾊
3. 段落样式设置
默认对齐⽅式是左对齐,可以⾃⾏修改
⼩结
以上就是如何⽤Python中的docx模块实现Word中的常⽤操作,只要明⽩什么类型的操作可以⽤Python执⾏,并能在之后遇到繁琐的任务时想到使⽤Python即可,以下是⼏个利⽤该模块实现办公⾃动化的案例,希望能够对你有所帮助。返回搜狐,查看更多
责任编辑:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论