python 文件夹比较

it2022-05-09  29

参考:http://blog.csdn.net/imzoer/article/details/8675078

文件比较:filecmp模块:filecmp

'''Created on 2014-6-6@author: jyp@module: pro1.filecmp_test}'''import timeimport osfrom site import setBEGINLIBPATHdef getPrettyTime(state):      return time.strftime('%y-%m-%d %H:%M:%S', time.localtime(state.st_mtime))def compareDir(A_path, B_path):    A_files = []    B_files = []    for root, dirs, files in os.walk(A_path):        for file in files:            A_files.append(root + "\\" + file)    for root, dirs, files in os.walk(B_path):        for file in files:            B_files.append(root + "\\" + file)    a_files = []    b_files = []    a_path_len = len(A_path)    b_path_len = len(B_path)        for file in A_files:        a_files.append(file[a_path_len:])    for file in B_files:        b_files.append(file[b_path_len:])    setA = set(a_files)    setB = set(b_files)    commonfiles = setA & setB    print "#================================="      print "common in '", A_path, "' and '", B_path, "'"      print "#================================="      print '\t\t\ta:\t\t\t\t\t\tb:'      for f in sorted(commonfiles):          print f + "\t\t" + getPrettyTime(os.stat(A_path + "\\" + f)) + "\t\t" + getPrettyTime(os.stat(B_path + "\\" + f))                onlyA = setA - setB    print "#================================="      print "only in A '", A_path    print "#================================="      print '\t\t\ta:\t\t\t\t\t\tb:'      for f in sorted(onlyA):          print f + "\t\t" + getPrettyTime(os.stat(A_path + "\\" + f))    onlyB = setB - setA    print "#================================="      print "only in B'" , B_path    print "#================================="      print '\t\t\ta:\t\t\t\t\t\tb:'      for f in sorted(onlyB):          print f + "\t\t" + getPrettyTime(os.stat(B_path + "\\" + f))if __name__ == '__main__':    compareDir('f:/srcDir', 'f:/destDir')   

转载于:https://www.cnblogs.com/yongpan666/p/3773712.html


最新回复(0)