python操作word-基础

创建word文档

安装

复制代码
pip install python-docx

创建word文档

python 复制代码
from docx import Document

# 创建word文档
doc1 = Document()
# 保存文档
doc1.save('./创建word文档.docx')

打开文档

python 复制代码
doc1 = Document('./文档.docx')
# 保存文档
doc1.save('./文档.docx')

编写内容

标题

python 复制代码
doc1.add_paragraph('欢迎使用Python创建Word', style='Title')
doc1.add_heading('欢迎使用Python创建Word', 0)
doc1.add_heading('Python操作 增加1级标题', 1)
doc1.add_heading('Python操作 增加2级标题', 2)

段落

python 复制代码
# 段落
par1 = doc1.add_paragraph('在如今信息爆炸的时代,高效的办公自动化成为提高工作效率的必要手段。')
# 段落后面追加内容
par1.add_run('现在就开始学习Word办公自动化,让您的工作更加高效、专业和出色')

列表 - 无序

python 复制代码
doc1.add_paragraph('java', style='List Bullet')
doc1.add_paragraph('js', style='List Bullet')
doc1.add_paragraph('python', style='List Bullet')
doc1.add_paragraph('lua', style='List Bullet')
doc1.add_paragraph('c++', style='List Bullet')

列表 - 有序

python 复制代码
doc1.add_paragraph('Python', style='List Number')
doc1.add_paragraph('HTML', style='List Number')
doc1.add_paragraph('JS', style='List Number')
doc1.add_paragraph('Flask', style='List Number')

引用

python 复制代码
doc1.add_paragraph('这个是一个引用内容', style='Intense Quote')

图片

python 复制代码
# 图片
pic = doc1.add_picture('./bg.jpg')
# 获取文档的宽度
page_width = doc1.sections[0].page_width
# 获取文档的左边距
page_left_width = doc1.sections[0].left_margin
# 获取中间内容的宽度
content_width = page_width - page_left_width * 2
# 获取图片应该缩小的比例(如果图片或者页面宽度值太高,有可能程序无法计算,可以考虑同时缩小几倍)
sc = (content_width / 100) / (pic.width / 100)
# 修改图片的宽、高
pic.width = int(pic.width * sc)
pic.height = int(pic.height * sc)

表格

python 复制代码
# 增加表格
table = doc1.add_table(rows=1, cols=3)
# 设置表格的边框样式
table.style = 'Table Grid'
# 设置表格字段
cells = table.rows[0].cells
cells[0].text = '编号'
cells[1].text = '姓名'
cells[2].text = '职业'
# 表格数据
data = (
    (1, '吕小布', '将军'),
    (2, '诸葛亮', '军事'),
    (3, '刘备', '主攻'),
)
# 添加数据
for i, n, w in data:
    tmp_cell = table.add_row().cells
    tmp_cell[0].text = str(i)
    tmp_cell[1].text = n
    tmp_cell[2].text = w

读取文档

python 复制代码
from docx import Document

# 打开文档
doc1 = Document('./文档.docx')
# 读取数据-段落
for p in doc1.paragraphs:
    print(p.text)
# 读取表格
for t in doc1.tables:
    for row in t.rows:
        for c in row.cells:
            print(c.text, end=' ')
        print()
相关推荐
Ai-_Man2 天前
豆包智能体内容批量导出:哪些该存、存成什么、怎么存v
人工智能·ai·小程序·word
weixin_416660072 天前
解决方案:DeepSeek不支持直接导出Word
word
2601_965912913 天前
PDF转Word工具深度横评:2026年国内免费方案技术对比
pdf·word
L歪歪君 山水甲天3 天前
Office文件的奥秘——.NET平台下不借助Office实现Word、Powerpoint等文件的解析(1)
word·powerpoint·.net
SpaceAIGlobal3 天前
Word文档一键转PPT?4种方法实测对比与选型分析(2026)
word·powerpoint
随手工具-Excel, pdf, SQL4 天前
多个 PDF 怎么合并成一个?免费在线工具,还能混入图片和 Word
pdf·word·效率工具·在线工具·pdf合并·合并pdf
ms365copilot4 天前
在Copilot聊天中添加Word、Excel 和 PowerPoint 代理
word·excel·copilot
2601_965912834 天前
PDF转Word技术选型:2026年文档解析引擎性能对比与集成评估
pdf·word
大数据张老师4 天前
Typora 导出 Word 模版操作手册
开发语言·c#·word·typora
DS随心转小程序6 天前
实测评测 AI 导出鸭转化效能,全方位优化 DeepSeek 输出 word 文档落地使用效率
人工智能·aigc·word·豆包·deepseek·ai导出鸭