0


使用Python以懒人的方式快速组织文件

1. 引言

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

在这里插入图片描述

那么是否可以开发一个简单的Python脚本,来帮助我们将该目录下的文件分门别类的组织好,即将相同类型的文件存放在同一个目录下,从而解放我们的双手呢?

答案当然是肯定的,接下来我们就来实现上述小工具吧。。。

2. 场景再现

不妨假设我们在Download目录下下载了3个类型的文件,这三个类型的文件后缀名是不同的。如下所示:

  • 文档文件(.pdf .docx 和 .txt)
  • 声音文件(.m4a .m4b 和 .mp3)
  • 图像文件 (.jpg .jpeg 和 .png)

j接着,我想将每个文件移动到具有预定义类别的文件夹中。

3. 代码实现

3.1 导入依赖库

这里我们需要导入os和pathlib库,用来处理路径,文件和目录,代码如下:

import os
from pathlib import Path

3.2 准备工作

这里我们需要定义每个类型的文件对应的存放目录,我们采用字典格式来实现,代码如下:

SUBDIR ={"DOCUMENTS":[".pdf",".docx",".txt"],"AUDIO":[".m4a",".m4b",".mp3"],"IMAGES":[".jpg",".jpeg",".png"]}

当然,我们可以根据实际情况对列表中的每个子项进行扩充。

3.3 获取文件目录

接着我们来实现从已知文件扩展名来选择所属目录的功能。这里我们只需循环并检查我们的文件扩展名,然后返回对应的类别即可。代码如下:

defpickDir(value):for category, ekstensi in SUBDIR.items():for suffix in ekstensi:if suffix == value:return category

3.4 主函数

将整个依据文件扩展名归档文件的功能,封装成函数,代码如下:

deforganizeDir():for item in os.scandir():#just looking for file, skip the directoryif item.is_dir():continue
        filePath = Path(item)
        fileType = filePath.suffix.lower()
        directory = pickDir(fileType)#just skip, if the file extension not defined.if directory ==None:continue
        
        directoryPath = Path(directory)#make new directory if the category's directory not found.if directoryPath.is_dir()!=True:
                directoryPath.mkdir()
        filePath.rename(directoryPath.joinpath(filePath))

3.5 代码执行

接着我们来调用organizeDir()函数。代码如下:

organizeDir()

3.6 运行效果

代码运行前:
在这里插入图片描述
缩略图展示效果:
在这里插入图片描述
运行上述代码之后:
在这里插入图片描述
缩略图展示效果:
在这里插入图片描述

4. 总结

本文使用Python实现了快速将一个目录下的声音,文档和图像进行类别归档的功能,原理简单,但是可以极大地提升我们的工作效率。

最后,祝愿大家在日常生活中可以开发更多实用的小工具。

最最后, 您学废了吗?

在这里插入图片描述
关注公众号《AI算法之道》,获取更多AI算法资讯。

关注公众号,后台回复 File,即可获取源代码。

参考


本文转载自: https://blog.csdn.net/sgzqc/article/details/122483240
版权归原作者 赵卓不凡 所有, 如有侵权,请联系我们删除。

“使用Python以懒人的方式快速组织文件”的评论:

还没有评论