这篇文章给大家分享的是有关python如何删除文件夹下相同文件和无法打开的图片的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
成都创新互联专注于海湖新企业网站建设,成都响应式网站建设,电子商务商城网站建设。海湖新网站建设公司,为海湖新等地区提供建站服务。全流程定制网站,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务python可以做什么Python是一种编程语言,内置了许多有效的工具,Python几乎无所不能,该语言通俗易懂、容易入门、功能强大,在许多领域中都有广泛的应用,例如最热门的大数据分析,人工智能,Web开发等。
删除相同文件:
#coding=utf-8 import os import os.path import Image import hashlib def get_md5(filename): m = hashlib.md5() mfile = open(filename, "rb") m.update(mfile.read()) mfile.close() md5_value = m.hexdigest() return md5_value if __name__ == '__main__': ipath = "E:\\20161019_photo" uipath = unicode(ipath, "utf8") for parent, dirnames, filenames in os.walk(uipath): md5_list = [] #for dirname in dirnames: # 输出文件夹信息 #print "parent is:" + parent #print "dirname is: " + dirname for filename in filenames: #print "parent is :" + parent #print "filename is:" + filename #print "md5_list is : " if(get_md5(os.path.join(parent, filename)) in md5_list): os.remove(os.path.join(parent, filename)) else: md5_list.append(get_md5(os.path.join(parent, filename))) #print md5_list #md5 = []
删除无法打开文件:
#coding=utf-8 import os import os.path import Image import hashlib def get_md5(filename): m = hashlib.md5() mfile = open(filename, "rb") m.update(mfile.read()) mfile.close() md5_value = m.hexdigest() return md5_value if __name__ == '__main__': ipath = "E:\\20161019_photo" uipath = unicode(ipath, "utf8") for parent, dirnames, filenames in os.walk(uipath): for filename in filenames: name ,ext = os.path.splitext(filename) if((ext == ".png") or (ext == ".tif") or (ext == ".gif")): os.remove(os.path.join(parent, filename)) else: if(ext == ".jpg"): try: fp = open(os.path.join(parent, filename), 'rb') img = Image.open(fp) except: fp.close() os.remove(os.path.join(parent, filename)) else: continue
感谢各位的阅读!关于“python如何删除文件夹下相同文件和无法打开的图片”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!