• 【NLP】python-docx库简介


            python-docx是一个word稳定读取、创建、编辑报错的Python 库,注意仅支持Microsoft Word 2007+ (.docx) 文件。

    目录

    🍓🍓安装

    🍓🍓应用举例

    🔔🔔python代码1

    🔔🔔输出1

    🔔🔔python代码2

    🔔🔔输出2

    🍓🍓demo应用

    ⭐⭐创建文档

    ⭐⭐创建标题

    ⭐⭐添加一段文字

    ⭐⭐设置字体加粗

    ⭐⭐设置字体倾斜

    ⭐⭐添加一级标题

    ⭐⭐增加引用

    ⭐⭐增加无序列表

    ⭐⭐增加有序列表

    ⭐⭐添加图片

    ⭐⭐添加表格

    ⭐⭐设置表格行列内容

    ⭐⭐添加分页符

    ⭐⭐保存word文档

    🍓🍓完整代码 


    🍓🍓安装

    pip install python-docx
    

    🍓🍓应用举例

            需求:创建一个word文档,并添加一段文字“It was a dark and stormy night.”,保存该文档到dark-and-stormy.docx文件中

    🔔🔔python代码1

    1. from docx import Document
    2. document = Document()
    3. document.add_paragraph("It was a dark and stormy night.")
    4. print(document)

    🔔🔔输出1

    
    

            


            需求:读取文档dark-and-stormy.docx,读取文档第一段的文字内容,并输出打印。

    🔔🔔python代码2

    1. document.save("dark-and-stormy.docx")
    2. document = Document("dark-and-stormy.docx")
    3. print(document.paragraphs[0].text)

    🔔🔔输出2

    'It was a dark and stormy night.'

    🍓🍓demo应用

    功能包含:

    • ⭐⭐创建文档

    1. from docx import Document
    2. from docx.shared import Inches
    3. document = Document()
    • ⭐⭐创建标题

             'Document Title'表示标题内容,0代表级别。

    document.add_heading('Document Title', 0)
    • ⭐⭐添加一段文字

            “A plain paragraph having some ”为添加文字内容,从add_paragraph是指另起一段添加文字,add_run是在目前段落后添加文字,不会另起段落,此处要注意。还可能通过add_run('\n')进行段内换行,也一定要留意。

    p = document.add_paragraph('A plain paragraph having some ')
    

            .bold=True表示文字加粗,反之False为不加粗

    p.add_run('bold').bold = True
    • ⭐⭐设置字体倾斜

            .italic = True表示文字倾斜,反之False为不倾斜 

    p.add_run('italic.').italic = True
    • ⭐⭐添加一级标题

              'Heading, level 1'表示标题内容,1代表标题级别。

    document.add_heading('Heading, level 1', level=1)
    
    • ⭐⭐增加引用

             'Intense quote'表示引用内容,style表示引用

    document.add_paragraph('Intense quote', style='Intense Quote')
    
    • ⭐⭐增加无序列表

           'first item in unordered list'表示列表内容,style表示无序列表

    1. document.add_paragraph(
    2. 'first item in unordered list', style='List Bullet'
    3. )
    • ⭐⭐增加有序列表

            'first item in ordered list' 表示列表内容,style表示有序列表

    1. document.add_paragraph(
    2. 'first item in ordered list', style='List Number'
    3. )
    • ⭐⭐添加图片

            'monty-truth.png'为图片路径,width为边框尺寸

    document.add_picture('monty-truth.png', width=Inches(1.25))
    • ⭐⭐添加表格

            添加一个1行3列的表格

    table = document.add_table(rows=1, cols=3)
    • ⭐⭐设置表格行列内容

            给表格添加内容

    1. records = (
    2. (3, '101', 'Spam'),
    3. (7, '422', 'Eggs'),
    4. (4, '631', 'Spam, spam, eggs, and spam')
    5. )
    6. table = document.add_table(rows=1, cols=3)
    7. hdr_cells = table.rows[0].cells
    8. hdr_cells[0].text = 'Qty'
    9. hdr_cells[1].text = 'Id'
    10. hdr_cells[2].text = 'Desc'
    11. for qty, id, desc in records:
    12. row_cells = table.add_row().cells
    13. row_cells[0].text = str(qty)
    14. row_cells[1].text = id
    15. row_cells[2].text = desc
    • ⭐⭐添加分页符

            通过add_page_break()函数添加分页符

    document.add_page_break()
    
    • ⭐⭐保存word文档

            保存新word文档

    document.save('demo.docx')

    🍓🍓完整代码 

    1. from docx import Document
    2. from docx.shared import Inches
    3. document = Document()
    4. document.add_heading('Document Title', 0)
    5. p = document.add_paragraph('A plain paragraph having some ')
    6. p.add_run('bold').bold = True
    7. p.add_run(' and some ')
    8. p.add_run('italic.').italic = True
    9. document.add_heading('Heading, level 1', level=1)
    10. document.add_paragraph('Intense quote', style='Intense Quote')
    11. document.add_paragraph(
    12. 'first item in unordered list', style='List Bullet'
    13. )
    14. document.add_paragraph(
    15. 'first item in ordered list', style='List Number'
    16. )
    17. document.add_picture('monty-truth.png', width=Inches(1.25))
    18. records = (
    19. (3, '101', 'Spam'),
    20. (7, '422', 'Eggs'),
    21. (4, '631', 'Spam, spam, eggs, and spam')
    22. )
    23. table = document.add_table(rows=1, cols=3)
    24. hdr_cells = table.rows[0].cells
    25. hdr_cells[0].text = 'Qty'
    26. hdr_cells[1].text = 'Id'
    27. hdr_cells[2].text = 'Desc'
    28. for qty, id, desc in records:
    29. row_cells = table.add_row().cells
    30. row_cells[0].text = str(qty)
    31. row_cells[1].text = id
    32. row_cells[2].text = desc
    33. document.add_page_break()
    34. document.save('demo.docx')

    整理不易,欢迎一键三连!!!


    送你们一条美丽的--分割线--

    🌷🌷🍀🍀🌾🌾🍓🍓🍂🍂🙋🙋🐸🐸🙋🙋💖💖🍌🍌🔔🔔🍉🍉🍭🍭🍋🍋🍇🍇🏆🏆📸📸⛵⛵⭐⭐🍎🍎👍👍🌷🌷

  • 相关阅读:
    如何解决msvcp120.dll丢失问题,msvcp120.dll丢失的解决方法介绍
    《A Hierarchical Framework for Relation Extraction with Reinforcement Learning》论文阅读笔记
    精通Linux系列第三章:文件系统管理与权限设置(含目录结构思维导图)
    jQuery基础----开始简单的了解
    eBay测评自养号,卖家如何运营?
    快速批量升级 NugetPackage 版本
    Qt SQL:QSqlField、QSqlRecord、QSqlIndex、QSqlError
    CSS绘制各种三角形
    wgcna 原文复现 小胶质细胞亚群在脑发育时髓鞘形成的作用 microglial
    C++自动定义的成员函数
  • 原文地址:https://blog.csdn.net/qq_38308388/article/details/134272575