python语言实现电脑重复文件清理程序

最近电脑部分盘文件太多,且有些杂乱,想清理一下。考虑到办公电脑涉及到工作文件敏感性,遂决定用python自己写个简单的程序清理一下。
代码如下

import os
import glob
import filecmp
if __name__ == '__main__':

    # dir_path = r'F:\testsame'
    dir_path = input("请输入要清理的文件夹路径:")
    print("开始扫描,请稍候(●'◡'●)......")
    file_lst = []
    for i in glob.glob(dir_path + '/**/*', recursive=True):
        if os.path.isfile(i):
            file_lst.append(i)
    reserver_list = []
    listsize = len(file_lst)
    tol = listsize * listsize
    print("扫描完毕,共计%d个文件。开始比对文件(●'◡'●)......" %(listsize))
    count = 0
    for x in file_lst:
        for y in file_lst:
            count = count+1
            if x != y and os.path.exists(x) and os.path.exists(y):
                y_size = os.stat(y).st_size
                # # 都保留
                # if x in reserver_list:
                #     continue

                # 保留指定路径的文件
                if y in reserver_list:
                    continue
                if filecmp.cmp(x, y):
                	percent = count *100 /tol
                    print("")
                    print("文件 \033[0;36m %s \033[0m 和文件 \033[1;31m %s \033[0m 相同,大小%d字节" %(x,y,y_size))
                    print("确定要删除文件:\033[1;31m %s \033[0m吗?删除请直接回车,保留请输入N并回车" %(y))
                    agree = input()
                    if agree == "":
                        os.remove(y)
                        print("=============文件\033[1;31m %s \033[0m已删除。任务已完成%5.2f%%===========" %(y,percent))
                        print("文件比对中,请耐心等待......")
                    else:
                        reserver_list.append(y)
                        print("=============文件\033[1;31m %s \033[0m被保留。任务已完成%5.2f%%===========" %(y,percent))
                        print("文件比对中,请耐心等待......")
    input('处理完成退出')

加了一些提示语言,增加交互体验。
代码完成,运行一下看看
python语言实现电脑重复文件清理程序_第1张图片

不错,简单快捷!!
后将该程序打包成应用。
有需要的可以直接下载使用。(dos界面彩色不显示,打包时该项功能已注掉)
https://download.csdn.net/download/weixin_44162809/44063941

你可能感兴趣的:(python,python,电脑主机)