今天小编来给大家推荐几个在自动化办公领域当中非常好用的Python
模块,可以帮助大家在工作当中及大地提高效率,避免重复机械化地操作流程。
Pathlib
涉及到文件系统操作的时候,相信不少人仍然在使用Python
当中的OS
模块,相比较之下,Pathlib
模块有着不少优势,我们来看几个简单的案例
删除与创建目录
例如我们可以来创建与删除目录,代码如下
from pathlib import Path
currentPath = Path.cwd()
makePath = currentPath / 'pythonPractice'
makePath.mkdir()
那么同样的,删除目录的代码为
currentPath = Path.cwd()
delPath = currentPath / 'pythonPractice'
delPath.rmdir()
获取目录
例如我们想要获取当前所在的目录的路径,代码如下
currentPath = Path.cwd()
print(currentPath)
以及电脑用户所在的目录
homePath = Path.home()
print(homePath)
路径的拼接
例如我们想要拼接出桌面的绝对路径,代码如下
Path(Path.home(), "Desktop")
也可以是
Path.joinpath(Path.home(), "Desktop")
目录文件的判断
针对指定的路径,我们能够来判断是否是文件夹以及是否是一个文件,代码如下
input_path = r"指定的路径"
if Path(input_path ).exists():
if Path(input_path ).is_file():
print("是文件哦!")
elif Path(input_path ).is_dir():
print("是文件夹哦!")
else:
print("路径给的不对!")
glob
Python
当中的glob
模块主要是用来查找符合特定规则的目录和文件,并将搜索到的结果返回到一个列表当中去。
由于该模块支持使用正则通配符来进行查找,因此使用起来也是特别的方便,我们来看一下简单的案例,
path1 = r".\[0-9].jpg"
glob.glob(path1)
outut
['.\\1.jpg', '.\\2.jpg', '.\\3.jpg', ......]
其中经常会用到的通配符有
*
:匹配0个或者多个字符**
:匹配所有文件、目录,子目录和子目录里面的文件[]
:匹配指定范围内的字符,例如[1-9]
匹配的是1-9以内的字符[!]
:匹配不在指定范围内的字符
我们再来看几个案例,代码如下
for fname in glob.glob("./*.py"):
print(fname)
上面的代码打印出了当前目录下的所有py
后缀的文件,再来看一下案例
for fname in glob.glob("./file[!0-9].py"):
print(fname)
上面代码则是打印出了以filename
开头的非数字符号的py
文件。
PDF转成Word文档
最后我们来讲讲如何实现将PDF文档转换成Word格式的文档,用到的模块是pdf2docx
,我们先用pip命令来将该模块安装一下
pip install pdf2docx
我们来实践一下,代码如下
from pdf2docx import Converter
cv = Converter(r"pdf文档的具体路径")
cv.convert("test.docx", start=0,end=None)
cv.close()
如果是页面元素比较简单的文档,pdf2docx
模块处理一下是完全够用了,但是有些时候PDF
文档当中个别页面非常的花里胡哨,转换成Word
格式的文档之后则会显得有点凌乱。
最后我们还能够针对指定的页数进行转换,例如只是针对文档当中的奇数页进行操作,代码如下
from pdf2docx import Converter
cv = Converter(r"pdf文档的具体路径")
cv.convert("test.docx", pages=[1, 3, 5, 7])
cv.close()
NO.1