文章目录
- [1 概述](#1 概述)
-
- [1.1 第三方库:python-docx](#1.1 第三方库:python-docx)
- [2 新建文档](#2 新建文档)
-
- [2.1 空白文档](#2.1 空白文档)
- [2.2 标题](#2.2 标题)
- [2.3 段落](#2.3 段落)
- [2.4 文本](#2.4 文本)
- [2.5 字体](#2.5 字体)
- [2.6 图片](#2.6 图片)
- [2.7 表格](#2.7 表格)
- [3 扩展](#3 扩展)
-
- [3.1 修改文档](#3.1 修改文档)
- [3.2 读取文档](#3.2 读取文档)
1 概述
1.1 第三方库:python-docx
python
> pip install python-docx
2 新建文档
2.1 空白文档
python
import docx
from docx import document
# 1.新建 文档对象
doc = docx.Document()
# [可选] 代码提示。需增加下列代码
# print(type(doc))
assert isinstance(doc, document.Document) # 格式:doc, doc 的类型
# 2.保存文档,绝对路径 和 相对路径 均可
# doc.save(r'C:\Users\Administrator\Desktop\test.docx')
doc.save('test.docx')
2.2 标题
python
import docx
from docx import document
# 1.新建 文档对象
doc = docx.Document()
# [可选] 代码提示。需增加下列代码
# print(type(doc))
assert isinstance(doc, document.Document) # 格式:doc, doc 的类型
# 2.添加 标题
# 标题
doc.add_heading(text='Python 操作 Word 教程', level=0)
# 章节标题(Level = 0~9)
doc.add_heading(text='第一章:Python 基础', level=1)
doc.add_heading(text='1.1 Python 基础语法', level=2)
# 3.保存文档
doc.save('test.docx')
效果图:
2.3 段落
python
import docx
from docx import document
# 1.新建 文档对象
doc = docx.Document()
# [可选] 代码提示。需增加下列代码
# print(type(doc))
assert isinstance(doc, document.Document) # 格式:doc, doc 的类型
# 2.添加 文本段落
paragraph = doc.add_paragraph('这是第一个文本段落')
paragraph.insert_paragraph_before("在之前,添加段落")
doc.add_paragraph(text='这是第二个文本段落', style='List Bullet')
# 3.保存文档
doc.save('test.docx')
2.4 文本
python
import docx
from docx import document
# 1.新建 文档对象
doc = docx.Document()
# [可选] 代码提示。需增加下列代码
# print(type(doc))
assert isinstance(doc, document.Document) # 格式:doc, doc 的类型
# 2.添加 文本(同 文本段落)
paragraph = doc.add_paragraph()
run = paragraph.add_run('这是一个文本')
# 3.保存文档
doc.save('test.docx')
2.5 字体
python
import docx
from docx import document
from docx.shared import Pt
from docx.shared import RGBColor
# 1.新建 文档对象
doc = docx.Document()
# [可选] 代码提示。需增加下列代码
# print(type(doc))
assert isinstance(doc, document.Document) # 格式:doc, doc 的类型
# 2.添加 文本(同 文本段落)
paragraph = doc.add_paragraph()
run = paragraph.add_run('这是一个文本')
# 3.设置字体
font = run.font
font.name = '微软雅黑' # 字体名称
font.size = Pt(12) # 字体大小
font.color.rgb = RGBColor(255, 0, 0) # 红色
font.bold = True # 加粗
# 4.保存文档
doc.save('test.docx')
2.6 图片
python
import docx
from docx import document
from docx.shared import Cm
# 1.新建 文档对象
doc = docx.Document()
# [可选] 代码提示。需增加下列代码
# print(type(doc))
assert isinstance(doc, document.Document) # 格式:doc, doc 的类型
# 2.添加 图片,CM:厘米
doc.add_picture('1.png', width=Cm(10), height=Cm(5))
# 3.保存文档
doc.save('test.docx')
2.7 表格
python
import docx
from docx import document
# 1.新建 文档对象
doc = docx.Document()
# [可选] 代码提示。需增加下列代码
# print(type(doc))
assert isinstance(doc, document.Document) # 格式:doc, doc 的类型
# 2.添加 表格
table = doc.add_table(rows=2, cols=3)
# 获取第一行第二列的单元格,并修改内容
cell = table.cell(0, 0)
cell.text = '我是 A1'
# 输出单元格数据
for row in table.rows:
for cell in row.cells:
print(cell.text)
# 3.保存文档
doc.save('test.docx')
3 扩展
3.1 修改文档
python
import docx
from docx import document
# 1.创建 文档对象
doc = docx.Document('test.docx')
assert isinstance(doc, document.Document)
# 2.修改 文档(其它同理)
doc.paragraphs[0].text = '修改第一个段落'
# 3.保存 文档
doc.save('test.docx')
3.2 读取文档
python
import docx
from docx import document
# 1.创建 文档对象
doc = docx.Document('test.docx')
assert isinstance(doc, document.Document)
# 2.读取 文档
# 段落的文本
for p in doc.paragraphs:
print(p.text)
# 3.保存 文档
doc.save('test.docx')