
01
引言
有时我在电脑的 “下载” 文件夹中的存放很多类型的文件。看上去非常凌乱,
你有同样的问题吗?

那么是否可以开发一个简单的Python脚本,来帮助我们将该目录下的文件分门别类的组织好,即将相同类型的文件存放在同一个目录下,从而解放我们的双手呢?
答案当然是肯定的,接下来我们就来实现上述小工具吧。。。
02
场景再现
不妨假设我们在Download目录下下载了3个类型的文件,这三个类型的文件后缀名是不同的。如下所示:
-
文档文件(.pdf .docx 和 .txt) 声音文件(.m4a .m4b 和 .mp3)
图像文件 (.jpg .jpeg 和 .png)
03
代码实现
导入依赖库:
import osfrom pathlib import Path
SUBDIR = {"DOCUMENTS":[".pdf",".docx",".txt"],"AUDIO":[".m4a",".m4b",".mp3"],"IMAGES":[".jpg",".jpeg",".png"]}
def pickDir(value):for category, ekstensi in SUBDIR.items():for suffix in ekstensi:if suffix == value:return category
def organizeDir():for item in os.scandir():#just looking for file, skip the directoryif item.is_dir():continuefilePath = Path(item)fileType = filePath.suffix.lower()directory = pickDir(fileType)#just skip, if the file extension not defined.if directory == None:continuedirectoryPath = Path(directory)#make new directory if the category's directory not found.if directoryPath.is_dir() != True:directoryPath.mkdir()filePath.rename(directoryPath.joinpath(filePath))
organizeDir()
04
运行效果
代码运行前:

缩略图展示效果:

运行上述代码之后:

缩略图展示效果:
05
总结
本文使用Python实现了快速将一个目录下的声音,文档和图像进行类别归档的功能,原理简单,但是可以极大地提升我们的工作效率。
最后,祝愿大家在日常生活中可以开发更多实用的小工具。
最最后, 您学废了吗?
关注公众号,后台回复 File,即可获取源代码。

