• 大小: 5KB
    文件类型: .py
    金币: 2
    下载: 1 次
    发布日期: 2021-06-09
  • 语言: Python
  • 标签: Python  

资源简介

将杂乱的文件按照文件名分类移动到对应类别的文件夹中

资源截图

代码片段和文件信息

#! /usr/bin/python
# -*- coding: UTF-8 -*-

import os;
import shutil;
import difflib;

#fileDir=os.getcwd();
fileDir=“E:\lib“

#定义搜索文件函数
def sourceAllFile(file_listfiledir_list):
    file_dict = {}
    for parentdirnamesfilenames in os.walk(fileDir):
        for filename in filenames:
            filedir_list.append(os.path.join(parentfilename))
            file_list.append(filename)
            file_dict[filename]=os.path.join(parentfilename)

    #返回的字典按照key排序,正序
    return sorted(file_dict.items()key=lambda f:f[0]reverse=False)

#查看文件是否相同
def checkSimFile(dict):
    pin=0
    dict_len=len(dict)
    dirs=set()
    result_set=set()
    result_obj={}
    result_bak=‘‘
    church_index=[]
    while pin        ori_str=dict[pin][0]
        count=pin+1;
        while count            new_str=dict[count][0]
            #比较第一个字符串和下一个字符串,如果第一个字符都相等
            #那么比较第二个字符,直到不相等,然后把公共的字符存起来
            #然后和下一个字符串相比,如果不同就直接退出循环,然后设置pin的大小
            fileDirindex=compareFileName(ori_strnew_str);
            #index=difflib.SequenceMatcher(Noneori_str[0:6]new_str[0:6]).ratio();
            print ori_strnew_strindex;
            #print pincountori_strnew_strfileDirindex(index==0 or(len(church_index)>0 and church_index[len(church_index)-1]!=index))
            if index<0.8 or (len(church_index)>0 and church_index[len(church_index)-1]>0 and church_index[len(church_index)-1]!=index):    
                pin=count
                church_index.append(index)
                break
            else:
                church_index.append(index)
                dirs.add(fileDir)
                result_bak=fileDir
                if fileDir in dirs:
                    result_set.add(dict[count][1])
                    result_set.add(dict[pin][1])
                dirs.add(fileDir)
                count=count+1
        else:
            #print(“不等为“+str(pin)+“-“+str(count))
            if len(result_set)>0:
                    result_obj[result_bak]=tuple(result_set)
                    result_set=set()
            break
        
        if len(result_set)>0:
          

评论

共有 条评论