最近工作中,需要将查询的一段时间的数据可视化,并导出为word格式。由于对word操作不熟悉,查阅了一下相关文档,这里简要记录一下如何使用python操作word。
这里还是提醒下,很多人学Python过程中会遇到各种烦恼问题,没有人解答容易放弃。为此我建了个python学习资源圈里面有最新学习资料,如果你想学或者正在学python,可以关注我,后台私信我 ‘p’ 免费获取!还有老司机解答哦
说明
- 本代码来源于官方文档(https://python-docx.readthedocs.io/en/latest/),这里对代码做了一些注释。
- 该代码记录了对word的常见操作:
1.添加标题
2.添加段落
3.为段落文字设置样式
4.插入图片
5.添加表格,并输入内容
6.添加分页
效果图
代码
# coding:utf-8""" python 操作word"""from docx import Documentfrom 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,可以关注我,后台私信我 ‘p’ 免费获取!还有老司机解答哦
本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。