Python应用 | 读写docx文件 (值得收藏的技能)

简介: Python应用 | 读写docx文件 (值得收藏的技能)

字处理软件是平时办公必备的同时也是最常用的软件之一,而字处理软件用的最多最频繁的就是微软的word,其扩展名为docx。在日常工作中,可能需要对很多的docx文件进行批处理,例如教师在批阅学生提交的电子版作业时,需要填写日期等信息,假设一个年级有100人,那么100份作业就需要填写100次日期,这个工作是简单的、重复的,那么是不是可以将这个工作交给计算机去做呢?




要想让计算机完成这项工作,就需要通过编程的方式告诉计算机应该怎么做。我们选择python编程语言来完成这项工作。


第一步:安装第三方操作docx文件的依赖库docx。

python中提供了支持读写docx文件的库为python-docx,首先需要安装这个第三方库,可以通过包管理软件pip来完成。


pip install python-docx


第二步:打开docx文件,假设要打开的文件名为'作业1.docx'。


doc = Document('作业1.docx')

有了docx对象,接下来就可以对文件进行操作了。


第三步:找到需要修改的位置,并完成修改。

通过分析docx文档,了解到需要处理的内容在表格中。


t0 = doc.tables[0]

该方法可以获得文件的第一个表格。


接下来可以获得表格的第一行。


row0 = t0.rows[0]

接下来可以获得该行的第一个单元格,并打印该单元格的内容。




cell0 = row0.cells[0]
cell0.text# 
输出结果为:学号

该结果与文章开头的文件截图内容一致,从上面可以看到,利用python的docx库,可以非常方便的操作docx文件。


按照最初提出的需求,需要将表格中的日期修改为今天,可以看到该单元格位于第一个表格的第二行的第二个单元格。


doc.tables[0].rows[1].cells[1].text = '2019-07-19'

第四步:保存文件。


doc.save('作业1-new.docx')



最后一步:批处理所有文件。

要想批处理所有文件,只需要遍历指定文件夹中的所有文件,然后通过上面的方式对每一个文件进行处理即可完成任务。

import pathlib  
from docx import Document 
for item in pathlib.Path('/作业目录').iterdir():  
    # item.name 即为文件名 
    doc = Document(item.name) 
    doc.tables[0].rows[1].cells[1].text = '2019-07-19'  
    doc.save(item.name)

本文介绍了利用python批处理docx文件的方法,这个方法是非常实用、有效的,能够极大的提高工作效率,充分践行把简单的、重复的工作交给计算机。还在等什么呢,赶快下载试用吧,get一个新的技能!


如果您对本文感兴趣,欢迎持续关注后续更多Python应用系列文章。

参考文献

[1] python-docx documentation. https://python-docx.readthedocs.io/en/latest/


目录
相关文章
|
16小时前
|
测试技术 Go Python
在python中测试应用
【6月更文挑战第29天】本文介绍Python的unittest是内置的单元测试框架,适合线性控制流的代码测试。并举实例说明,如何组织测试代码,如何构造脚手架和测试套件。
15 6
在python中测试应用
|
1天前
|
机器学习/深度学习 人工智能 程序员
探索Python宝库:从基础到技能的干货知识(数据类型与变量+ 条件与循环+函数与模块+文件+异常+OOP)
探索Python宝库:从基础到技能的干货知识(数据类型与变量+ 条件与循环+函数与模块+文件+异常+OOP)
2 0
|
2天前
|
Java API 开发工具
如何将python应用编译到android运行
【6月更文挑战第27天】本文介绍在Ubuntu 20上搭建Android开发环境,包括安装JRE/JDK,设置环境变量,添加i386架构,安装依赖和编译工具。并通过`p4a`命令行工具进行apk构建和清理。
20 6
如何将python应用编译到android运行
|
3天前
|
数据安全/隐私保护 Python
经验大分享:python读取yaml文件
经验大分享:python读取yaml文件
10 0
|
3天前
|
Python
python搭建文件服务
python搭建文件服务
7 1
|
3天前
|
开发者 Python
Python进阶:深入剖析闭包与装饰器的应用与技巧
Python进阶:深入剖析闭包与装饰器的应用与技巧
|
3天前
|
JSON 安全 数据格式
Python文件操作宝典:一步步教你玩转文件读写
Python文件操作宝典:一步步教你玩转文件读写
|
4天前
|
存储 Python
Python处理文件的常用代码
Python处理文件的常用代码
|
15天前
|
存储 Python 内存技术
python WAV音频文件处理—— (1)读写WAV文件
python WAV音频文件处理—— (1)读写WAV文件
43 14
|
1月前
|
数据挖掘 索引 Python
Python 读写 Excel 文件
Python 读写 Excel 文件
120 0