近工作中,需要将查询的一段时间的数据可视化,并导出为word格式。由于对word操作不熟悉,查阅了一下相关文档,这里简要记录一下如何使用python操作word。
这里推荐下我自己建的人工智能Python学习群:[809160367],群里有我整理的一份关于pytorch、python基础,图像处理opencv\自然语言处理、机器学习、数学基础等资源库,想学习人工智能或者转行到高薪资行业的,大学生都非常实用,无任何套路免费提供!还可以扫码加VX领取资料哦!
说明
本代码来源于官方文档(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().cellsrow_cells[0].text = str(qty)row_cells[1].text = idrow_cells[2].text = desc# 添加分页
document.add_page_break()# 保存world文档
document.save('demo.docx')if __name__ == "__main__":pass
这里再次推荐下我自己建的人工智能Python学习群:[809160367],群里有我整理的一份关于pytorch、python基础,图像处理opencv\自然语言处理、机器学习、数学基础等资源库,想学习人工智能或者转行到高薪资行业的,大学生都非常实用,无任何套路免费提供!还可以扫码加VX领取资料哦!