美文网首页Python打怪之路
利用python找到多个文件夹中的重复文件名

利用python找到多个文件夹中的重复文件名

作者: 蘑菇阿随 | 来源:发表于2019-03-12 15:35 被阅读0次

多个文件夹中可能存在命名相同、内容却不同的文件,怎么办

你可以用最笨的方法,利用导航栏搜索窗格,一个个搜

花费时间不说,你还需要知道文件夹中所有的文件名

所以,还是借用程序吧


import os

# 将文件夹中所有的文件名存入一个list

def file_name(file_dir): 

    a = []

    for roots, dirs, files in os.walk(file_dir):  # 注意这里一定要加 roots,否则报错  

        b = dirs # 当前路径下所有子目录

        a.extend(b) 

        c = files # 当前路径下所有非目录子文件

        a.extend(c)

    return a



file_list = file_name(r'C:\\Users\Desktop\\图片')

file_set_list = list(set(file_list)) # 利用set中元素不能重复的特性



file_dic = {}



# 看集合中的元素在list里重复几次,存入一个dic,key是文件名,value是重复次数

for i in file_set_list:

    count = 0

    for m in file_list:

        if i == m:

            count += 1

    file_dic[i] = count



# 获取存在重复的文件名

for key in file_dic:

    if file_dic[key] > 1:

        print(key)

以上代码是查找“图片”这个文件夹中命名重复的文件,我的“图片”文件下还有很多文件夹,每个文件夹下都是我要寻找的是否重复的子目录。

当然,以上代码只是小试牛刀,还有许多地方需要完善。

例如:
1.可以将代码封装进函数,调用时只用输入需要查找重复命名文件所在的文件夹路径;

2.我不知道如果“图片”下既有文件夹,又包含文件,这段代码是否适用;

3.没有实现将重复的文件重命名后另存入一个单独文件夹;

以上未实现功能以后再试吧

相关文章

网友评论

    本文标题:利用python找到多个文件夹中的重复文件名

    本文链接:https://www.haomeiwen.com/subject/yslnpqtx.html