python自动办公-用docx模块快速操作word文件

本文介绍了如何使用python-docx模块进行Word文档操作,包括创建文档、添加标题和段落、设置字体样式、制作表格以及读取和修改已有内容。详细讲解了字体、段落样式以及表格单元格的格式设定。
摘要由CSDN通过智能技术生成

一、基础内容

安装第三方库的时候安装:python-docx

from docx import Document

Pt - 像素、Cm - 厘米、Inches - 英寸

from docx.shared import Pt, Cm, Inches, RGBColor

1. 基本概念

1)Document对象(文档对象) - 代表一个word文件
2)heading(标题)
3)paragraph(段落) - 一段文字
4) run - 多个run可以拼成一个段落,不同的run可以单独设置不同的样式
5)table(表格) - 多行多列的表格
6)picture(图片) - 文档中插入的图片

2. 操作word文档

1)创建空的word文档

doc = Document()

2) 添加标题

Document对象.add_heading(标题内容,level=1)

level的取值范围是:1 ~ 9,如果是0表示普通段落

h1 = doc.add_heading('数据分析报告', level=1)      # 添加一个一级标题

3)添加段落

Document对象.add_paragraph(段落内容)

3.1)直接添加整个段落文字 ```python

p1 = doc.add_paragraph('此次调研数据主要通过问卷发放的形式获取,在紫金港全校范围内开展。样本数据通过简单随机抽样和分层抽样相结合的方法,进行相对广泛的数据采集与调研,选取的样本量较大,获得的数据客观真实。以下为具体的数据分析结果:')

h2 = doc.add_heading('一、总体情况', level=2)

##### 3.2)分段添加段落问题

段落对象.add_run(内容)

p2 = doc.add_paragraph('共发放问卷:')
run = p2.add_run('320 份')
run.font.color.rgb = RGBColor(255, 0, 0)

p3 = doc.add_paragraph()
run1 = p3.add_run('回收问卷: ')
run2 = p3.add_run('296 份')
run3 = p3.add_run(',回收率')
run4 = p3.add_run('92.5%')

添加分页(换页)

doc.add_page_break()


h3 = doc.add_heading('二、样本代表性', level=2)

h4 = doc.add_heading('(一)性别:分布', level=3)

4) 添加表格

Document对象.add_table(行数, 列数)

table = doc.add_table(3, 3, style="Light Grid")    # 'Medium Grid'
table.cell(0, 0).text = '性别'
table.cell(0, 1).text = '人数'
table.cell(1, 0).text = '男'

5)添加图片

doc.add_paragraph()

如果添加图片的时候没有设置宽高,图片按照原图大小显示

doc.add_picture('files/img1.png', width=Cm(13))
doc.add_picture('files/liubei.jpg', width=Cm(13))

保存word文档

doc.save('files/demo1.docx')

在这里插入图片描述

二、单独设置内容样式

from docx import Document
from docx.shared import Pt, Cm, Inches, RGBColor
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT

doc = Document()

1. 字体相关样式

1.1 标题相关样式

h1 = doc.add_heading(level=1)
run = h1.add_run('数据分析报告')

设置标题的字体大小

h1.style.font.size = Pt(25)

设置文字颜色

h1.style.font.color.rgb = RGBColor(97, 197, 84)

文字居中(CENTER、LEFT、RIGHT)

h1.paragraph_format.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER

设置字体名称(标题的字体名称不能直接设置到标题对象上的,需要设置到提供内容的run对象上)

run.font.name = '楷体'

注意:英文字体对应的字体名可以直接设置; 如果是中文字体名称,必须加上下面这段代码才会有效

注意:中文字体,必须先

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喆子玩点数据

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值