使用:检查两个文件夹的文件,以A为标准,删除B中不一致的文件。
A文件夹(标准)、B文件夹(被检查)
注意:文件夹内只有一种类型文件,不得有其他类型文件。
A为txt文件,B为jpg文件
根据txt标签,删除未标注的jpg图片
import os
# 两个都必须绝对路径
# 输入图片路径 被删除
path_jpg = r"D:\t_l\lbw_imgs\x_20220922\x_20220922_d_imgs\img"
# 输入的标签路径 标准
path_txt = r"D:\t_l\lbw_imgs\x_20220922\x_20220922_d_imgs\mask"
list_jpg = os.listdir(path_jpg)
list_txt = os.listdir(path_txt)
jpg_name = []
txt_name = []
for i in range(len(list_jpg)):
name_jpg, _ = list_jpg[i].split(".")
jpg_name.append(name_jpg)
for j in range(len(list_txt)):
name_txt, _ = list_txt[j].split(".")
txt_name.append(name_txt)
del_jpg = []
for name_j in range(len(jpg_name)):
if jpg_name[name_j] in txt_name:
continue
else:
jpg = jpg_name[name_j] + ".jpg"
del_jpg.append(jpg)
for del_name_jpg in del_jpg:
# 合并路径
name_del_jpg = os.path.join(path_jpg, del_name_jpg)
os.remove(name_del_jpg)
print(len(del_jpg))