Python编写Word文档

目录

[0. 安装依赖](#0. 安装依赖)

[1. 创建word文档](#1. 创建word文档)

[2. 添加标题、居中、字体16大小](#2. 添加标题、居中、字体16大小)

[3. 添加标题一](#3. 添加标题一)

[4. 添加一段话并设置字体颜色](#4. 添加一段话并设置字体颜色)

封装函数

[5. 换页](#5. 换页)

[6. 插入表格](#6. 插入表格)


0. 安装依赖

bash 复制代码
python-docx==1.1.2

1. 创建word文档

python 复制代码
from docx import Document

doc = Document()

2. 添加标题、居中、字体16大小

python 复制代码
from docx.shared import Pt
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT

        # 添加标题
        p = doc.add_paragraph()
        run = p.add_run("标题111")
        # 下面仅设置字体大小
        run.font.size = Pt(16)
        # 设置居中对齐
        p.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER

3. 添加标题一

python 复制代码
        # 添加标题一
        p = doc.add_paragraph("总结", style="Heading 1")

4. 添加一段话并设置字体颜色

python 复制代码
        # 插入一段文字
        p = doc.add_paragraph('Lorem ipsum dolor sit amet.')
        run = p.add_run('这段话的字体颜色将被设置为红色。')
        run.font.color.rgb = RGBColor(255, 0, 0)

封装函数

python 复制代码
"""
paragraph: doc.add_paragraph返回值
text:文字内容
font_size:字体大小
bold:加粗
line:换行
"""
def add_formatted_text(paragraph, text, font_size=9, bold=False, line=False):
    run = paragraph.add_run(text)
    # 设置字体大小
    run.font.size = Pt(font_size)
    if bold:
        run.bold = True
    # 写完即换行
    if not line:
        paragraph.add_run("\n")
    return run


p = doc.add_paragraph(style="Heading 1")
run = add_formatted_text(p, "1111", font_size=16, line=True)
# 字体加颜色    
run.font.color.rgb = RGBColor(0, 0, 255)

5. 换页

python 复制代码
        # 换页
        doc.add_page_break()

6. 插入表格

python 复制代码
        # 插入一个两行两列的表格
        table = doc.add_table(rows=2, cols=2)

        cell = table.cell(0, 1)
        cell.text = 'parrot, possibly dead'
相关推荐
智慧物业老杨38 分钟前
物业绿化数智化权责管控方案:基于工单平台的双层权限追溯模块落地实践
python
Metaphor6921 小时前
使用 Python 在 Word 文档中添加批注
python·word
FreakStudio1 小时前
WIZnet 开源方案分享:W55MH32 开发板 + 小智 AI实现以太网版本的小智机器人
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
会周易的程序员1 小时前
使用 pybind11 封装 C++ 日志库 microLog 为 Python 模块
java·c++·python·物联网·架构·日志·aiot
一只专注api接口开发的技术猿2 小时前
电商评论自动化监控与情感数据分析完整落地教程(附可直接运行 Python 代码)
大数据·数据库·python·数据分析·自动化
HAPPY酷2 小时前
【ROS2】 Conda 环境搭建(命令行版)
linux·运维·python·ubuntu·机器人·conda
柒和远方3 小时前
LeetCode 4. 寻找两个正序数组的中位数 —— 二分划分的艺术
javascript·python·算法
学也学不废4 小时前
Flask问答系统与LAUR模型
人工智能·python·机器学习·分类·数据挖掘
lewis_lk4 小时前
uv: Python 新一代极速包管理工具
python
promising_xxx5 小时前
深度学习个人开源知识库 深度筑基 | DeepBase
人工智能·python·深度学习·计算机视觉·ai·语言模型·nlp