Python比较两个文件夹下的文件 清除不在另一个文件夹下文件

Python比较两个文件夹下的文件 清除不在另一个文件夹下文件,第1张

这段代码 可以删除掉你下载的数据集里没有打标签的原图文件。当然不指定文件格式。例如:打了YOLO格式的数据集会生成与原图片文件名相同但是扩展名不同的label文件。(eg.原图文件是 person0001.jpg 标签文件是person0001.txt)。在下载了别人的数据集之后,发现图片比标签文件多又不好找时,可以利用下面的代码删除多余图片。

import os
names = os.listdir('D:\wahaha\get_img\labels')  #要依据此路径下的文件名做删除 *** 作
train_val = []
for name in names:
    index = name.rfind('.')
    name = name[:index]
    train_val.append(name+'.jpg')#其他图片格式修改后缀 eg:'.png'

delet=os.listdir('D:\wahaha\get_img\images')#被清洗的文件路径
for file in delet:
    if  (file not in train_val):
        del_file = 'D:\wahaha\get_img\images'+'\' + file #当代码和要删除的文件不在同一个文件夹时,必须使用绝对路径
        os.remove(del_file)#删除文件
        print("已经删除:",del_file)

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/715285.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-25
下一篇 2022-04-25

发表评论

登录后才能评论

评论列表(0条)

保存