删除一个目录下内容相同的文件
# -*- coding: utf-8 -*- ''' 删除一个目录下内容相同的文件 '''import shutilimport md5import osfrom time import clock as now#得到字符串的md5def getmd5(content):return md5.new(content).hexdigest();def main():path=raw_input("path:")all_md5={};all_size={};#遍历文件夹for file in os.listdir(path):real_path = os.path.join(path,file);#文件判断if os.path.isfile(real_path) == True:#文件大小size = os.stat(real_path).st_size#文件大小已存在,可能存在一样的文件if size in all_size.keys():#文件MD5filemd5 = getmd5(open(real_path,'rb').read());if all_size[size][1]='':all_size[size][1] = filemd5;#判断是否存在当前MD5的文件大小if filemd5 in all_size[size]:#删除print "delete file:",file;else:#设置size位置为最新的md5值all_size[size] = filemd5;else:#第一次出现size的情况all_size[size] = [real_path,''];if __name__=='__main__':main()