python-docx写入word

该文章详细介绍了如何使用python-docx库创建和编辑Word文档,包括设置标题和正文的字体、字号、颜色、对齐方式及加粗,以及如何插入图片。还提供了字体大小的磅值对照表,并强调了在设置字体时需注意的细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

字体大小参照

安装python-docx

引入依赖包

使用

标题设置字体、字号、居中、加粗、颜色

正文设置字体、字号、居中、加粗、颜色

添加图片

官方文档


字体大小参照

字号‘八号’对应磅值5
字号‘七号’对应磅值5.5
字号‘小六’对应磅值6.5
字号‘六号’对应磅值7.5
字号‘小五’对应磅值9
字号‘五号’对应磅值10.5
字号‘小四’对应磅值12
字号‘四号’对应磅值14
字号‘小三’对应磅值15
字号‘三号’对应磅值16
字号‘小二’对应磅值18
字号‘二号’对应磅值22
字号‘小一’对应磅值24
字号‘一号’对应磅值26
字号‘小初’对应磅值36
字号‘初号’对应磅值42

安装python-docx

pip install python-docx

引入依赖包

from docx import Document
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.image.exceptions import UnrecognizedImageError
from docx.oxml.ns import qn
from docx.shared import Inches, RGBColor, Pt

使用

doc = Document()
#标题
h2 = doc.add_heading("标题", level=2)
#段落
p1 = doc.add_paragraph()
run = p1.add_run('正文')
doc.save('E:\data\eee6.docx')

标题设置字体、字号、居中、加粗、颜色

h2 = doc.add_heading("", level=2)
#标题内容通过add_run方法添加,后设置字体字号等,add_heading里面直接加不生效
run = h2.add_run(u'方案名称:')
#字体
run.font.name = u'宋体'
run._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
run.font.size = Pt(14)
run.font.color.rgb = RGBColor(0, 0, 0)
#加粗
run.bold = True
# 居中
h2.paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER

正文设置字体、字号、居中、加粗、颜色

p1 = doc.add_paragraph()
run = p1.add_run('正文')
run.font.name = u'宋体'
run._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体')
run.font.size = Pt(12)
run.font.color.rgb = RGBColor(0, 0, 0)
#默认是False,可不设置
run.bold = False

添加图片

name = 'E:\data\59481646848.png'
doc.add_picture(name, Inches(6))

官方文档

python文档 — python-docx 0.8.11 文档

没有找到免费的中文文档,官方文档纯英文,看着头有亿点点大

 

### 使用 `python-docx` 库生成和操作 Word 文档 #### 创建一个新的 Word 文档并添加内容 为了创建新的 `.docx` 文件,首先需要导入必要的模块,并初始化一个新文档对象: ```python from docx import Document document = Document() ``` 接着可以通过调用不同的方法向文档中加入各种类型的元素。比如要增加一段文字到当前打开的文档,可以这样做[^1]: ```python document.add_paragraph('这是一个测试段落') ``` 对于更复杂的内容结构,如标题,则有专门的方法可用: ```python document.add_heading('这是主标题', level=0) document.add_heading('副标题一', level=1) document.add_heading('子项A', level=2) # 添加更多段落后保存文件 paragraphs = [ "这是正文部分。", "每句话都是独立的一行。" ] for p in paragraphs: document.add_paragraph(p) document.save('example.docx') # 将上述所有更改写入磁盘上的指定路径下的 example.docx 文件 ``` #### 修改现有的 Word 文档 当想要读取已有 `.docx` 文件并对之做出改动时,只需传入目标文件名作为参数传递给 `Document()` 构造函数即可加载现有文档。 假设有一个名为 `input_file.docx` 的文件,现在希望从中提取全部自然段的文字内容并显示出来: ```python existing_doc = Document('input_file.docx') full_text = [] for para in existing_doc.paragraphs: full_text.append(para.text) print('\n'.join(full_text)) ``` 同样也可以遍历各个段落,在适当位置插入新的文本节点或其他组件;甚至能够定位特定样式或标记的位置来进行针对性调整[^2]。 需要注意的是,虽然 `python-docx` 提供了许多便捷的功能来处理 `.docx` 类型的数据集,但它并不支持旧版 `.doc` 格式的文件。因此在实际应用过程中应当确保所使用的源材料均为最新版本格式,必要情况下可借助其他工具先行完成转换工作[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值