当前位置: 首页 > news >正文

【Python-Docx库】Word与Python的完美结合

【Python-Docx库】Word与Python的完美结合

今天给大家分享Python处理Word的第三方库:Python-Docx。

什么是Python-Docx?

Python-Docx是用于创建和更新Microsoft Word(.docx)文件的Python库。

日常需要经常处理Word文档,用Python的免费第三方包:Python-Docx处理docx十分方便。

而且这个包和pandas包结合使用,可以在word插入excel表格,节省了很多复制、粘贴、调整表格样式的时间,真的很方便!

但是要注意:Python-Docx只能处理docx、docx、docx文件!

下面给大家介绍一下如何使用Python-Docx吧,抛砖引玉~

安装

  • 由于 python-docx 已经提交给 PyPI 仓库,所以可以使用 pip 安装,如下:
   pip install python-docx
  • 如果同时安装了 python2 和 python3 那么 pip 可能不能用,可以使用 pip3 来安装,如下:
  pip3 install python-docx

文档下载

**Python-Docx的官网提供了使用文档:**该文档说明了如何使用Python-Docx的所有功能,并包含完整的API参考。在下载中包含的示例中也很好地展示了Python-Docx的功能。

图片

使用演示

这里直接用代码给大家演示,如何生成👆上图所示的文档,内容包含:

  1. 导入python-docx库

  2. 新建wrod文档、一级、二级、三级标题、自然段

  3. 设置字体格式

  4. 在指定位置添加图片

  5. 在指定位置添加表格

  6. 文档另存为

以下代码👉可以左右滑动,👉也可以直接复制粘贴哟~!

# 1、导入python-docx库
from docx import Document
from docx.shared import Inchesdocument = Document()
document.add_heading('Document Title', 0)# 2、新建wrod文档、一级、二级、三级标题、自然段
p = document.add_paragraph('A plain paragraph having some ')# 3、设置字体格式
p.add_run('bold').bold = True
p.add_run(' and some ')
p.add_run('italic.').italic = Truedocument.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')# 4、在指定位置添加图片
document.add_picture('monty-truth.png', width=Inches(1.25))records = ((3, '101', 'Spam'),(7, '422', 'Eggs'),(4, '631', 'Spam, spam, eggs, and spam')
)
# 5、在指定位置添加表格
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'
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 = descdocument.add_page_break()
# 6、文档另存为
document.save('demo.docx')

其他资源

可以在Python-Docx的GitHub页面上找到更多示例代码。https://github.com/python-openxml/python-docx

http://www.lryc.cn/news/328239.html

相关文章:

  • 吴恩达深度学习笔记:浅层神经网络(Shallow neural networks)3.6-3.8
  • 盘点最适合做剧场版的国漫,最后一部有望成为巅峰
  • Altium Designer许可需求分析
  • [c++]类和对象常见题目详解
  • 【c++】类和对象(五)赋值运算符重载
  • 密码学基础-对称密码/公钥密码/混合密码系统 详解
  • 《装饰器模式(极简c++)》
  • Spring Boot 整合分布式搜索引擎 Elastic Search 实现 自动补全功能
  • 实现一个Google身份验证代替短信验证
  • Spring框架与Spring Boot的区别和联系
  • [OpenCV学习笔记]Qt+OpenCV实现图像灰度反转、对数变换和伽马变换
  • 【大数据】Flink学习笔记
  • 社交网络的未来:Facebook如何塑造数字社交的下一章
  • RabbitMQ 延时消息实现
  • 【Django】枚举类型数据
  • java实现https连接总是要报no cipher suites in common
  • [C++初阶] 爱上C++ : 与C++的第一次约会
  • STM32技术打造:智能考勤打卡系统 | 刷卡式上下班签到自动化解决方案
  • module ‘numpy‘ has no attribute ‘int‘
  • MFC(一)搭建空项目
  • OKCC的API资源管理平台怎么用?
  • CentOS 7 安装python 3.7 需要必要的依赖。
  • 美术馆设计方案优化布局与设施提升观众体验!
  • 数据库基础原理
  • Pandas操作MultiIndex合并行列的Excel,写入读取以及写入多余行及Index列处理,插入行,修改某个单元格的值,多字段排序
  • 工作总结5
  • 速通汇编(二)汇编mov、addsub指令
  • 软考 - 系统架构设计师 - 构件组装技术
  • 2010年之前电脑ubuntu安装nvidia驱动黑屏处理
  • 类与对象中C++