10行Python代码自动清理电脑内重复文件

您所在的位置:网站首页 电脑qq刷屏代码怎么设置 10行Python代码自动清理电脑内重复文件

10行Python代码自动清理电脑内重复文件

2023-03-12 21:13| 来源: 网络整理| 查看: 265

大家好,欢迎来到 Crossin的编程教室 !

又到了Python办公自动化系列。今天分享一个系统层面的自动化案例:

「给定一个文件夹,使用Python检查给定文件夹下有无文件重复,若存在重复则删除」

主要涉及的知识点有:

模块综合应用

模块综合应用

利用模块比较两个文件

步骤分析

该程序实现的逻辑可以具化为:

遍历获取给定文件夹下的所有文件,然后通过嵌套循环两两比较文件是否相同,如果相同则删除后者。

实现问题的关键就变成了

如何判断两个文件是否相同?

在这里我们可以使用模块,来看看官方的介绍文档:

filecmp.cmp(f1, f2, shallow=True)

比较名为f1和f2的文件,如果它们似乎相等则返回,否则返回

如果为真,那么具有相同签名的文件将会被认为是相等的。否则,将比较文件的内容。

所以可以这样使用

解决了这个问题,我们就可以开始写代码了!

Python实现

导入需要的库并设置目标文件夹路径

接着遍历获取所有文件的,我们可以利用模块的通配符结合参数即可完成,框架如下:

由于遍历获取每一个文件或者文件夹后,需要判断是否是文件,如果是文件则可能将绝对路径存放到列表中,这里需要再完成两个事情:

首先创建一个空列表,后面用添加文件路径

接着利用判断是否是文件,返回则执行添加元素的操作

具体代码如下

上一步我们获取了目标文件夹下的所有文件路径,接下来就可以嵌套遍历这个路径列表,其中进行文件判断,进行文件删除

这里的代码已经实现了大致逻辑,但有一个细节需要考虑到:有可能循环到文件已经被前面的判断删除了,导致由于文件不存在而报错。

因此,可以用对文件存在进行判断,如下所示:

这样,一个简易的文件去重小程序就完成了,完整代码如下:

写在最后

通过本文的Python自动化脚本制作过程,我们可以再次体会Python办公自动化的强大。代码不长,却可以一次开发,长期受益。

大家应该可以从这个案例中理解Python办公自动化的一个核心就是批量操作-解放双手,让复杂的工作自动化!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3