前言
最近工作中,需要将查询的一段时间的数据可视化,并导出为word格式。由于对word操作不熟悉,查阅了一下相关文档,这里简要记录一下如何使用python操作word。
说明
- 本代码来源于官方文档(https://python-docx.readthedocs.io/en/latest/),这里对代码做了一些注释。
- 该代码记录了对word的常见操作:
1.添加标题
2.添加段落
3.为段落文字设置样式
4.插入图片
5.添加表格,并输入内容
6.添加分页
效果图
代码
# coding:utf-8
"""
python 操作word
"""
from docx import Document
from docx.shared import Inches
# 创建word文档对象
document = Document()
# 添加标题
document.add_heading('Document Title', 0)
# 添加段落
p = document.add_paragraph('A plain paragraph having some ')
# 添加段落文字,并指定样式:这里设置文字为加粗
p.add_run('bold').bold = True
# 添加段落文字
p.add_run(' and some ')
# 添加段落文字,并指定样式:设置文字为斜体
p.add_run('italic.').italic = True
# 添加一级标题
document.add_heading('Heading, level 1', level=1)
# 添加段落,并设置段落样式
document.add_paragraph('Intense quote', style='Intense Quote')
document.add_paragraph(
'first item in unordered list', style='List Bullet' # 样式为一个小圆点
)
document.add_paragraph(
'first item in ordered list', style='List Number' # 样式为数字
)
# 插入图片:Inches表示以英寸作为图片的单位
document.add_picture('pic.jpg', width=Inches(3.0))
records = (
(3, '101', 'Spam'),
(7, '422', 'Eggs'),
(4, '631', 'Spam, spam, eggs, and spam')
)
# 创建一行三列的表格
table = document.add_table(rows=1, cols=3)
# 获取第一行的所有列数
hdr_cells = table.rows[0].cells
# 给第一行的各个列添加内容
hdr_cells[0].text = 'Qty'
hdr_cells[1].text = 'Id'
hdr_cells[2].text = 'Desc'
# 给table表格添加新行,并给各列添加内容
for qty, id, desc in records:
row_cells = table.add_row().cells
row_cells[0].text = str(qty)
row_cells[1].text = id
row_cells[2].text = desc
# 添加分页
document.add_page_break()
# 保存world文档
document.save('demo.docx')
if __name__ == "__main__":
pass
▍学习资源推荐
零基础Python学习资源介绍
👉Python学习路线汇总👈
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(学习教程文末领取哈)
👉Python必备开发工具👈
温馨提示:篇幅有限,已打包文件夹,获取方式在:文末
👉Python学习视频600合集👈
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉实战案例👈
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉100道Python练习题👈
检查学习结果。
👉面试刷题👈
资料领取
上述这份完整版的Python全套学习资料已经上传CSDN官方,朋友们如果需要可以微信扫描下方CSDN官方认证二维码输入“领取资料” 即可领取。