zoukankan      html  css  js  c++  java
  • 教你用Python操作word文档实战项目

    最近工作中,需要将查询的一段时间的数据可视化,并导出为word格式。由于对word操作不熟悉,查阅了一下相关文档,这里简要记录一下如何使用python操作word。

    另外给大家推荐一个资源很全的python学习免非解答.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,这里有资深程序员分享以前学习心得,学习笔记,还有一线企业的工作经验,且给大家精心整理一份python零基础到项目实战的资料,每天给大家讲解python最新的技术,前景,学习需要留言的小细节

    说明

    • 本代码来源于官方文档(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最新的技术,前景,学习需要留言的小细节

    本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

  • 相关阅读:
    画册制作须知
    名片设计尺寸及名片设计的注意事项
    鼠标指到图片上会向上移动
    css3 实现鼠标放到一个div上显示出另一个隐藏的div
    React Native的原生路由
    React中input checked的使用
    Webpack打包React踩到的坑
    Linux下git的配置
    js变量提升的一个小坑
    SpringMVC中传入的对象存放在哪里
  • 原文地址:https://www.cnblogs.com/chengxuyuanaa/p/12546840.html
Copyright © 2011-2022 走看看