import os
import shutil
from PIL import Image
import numpy as np
#判定两个文件夹内的文件是否相同
file_path1 = 'D:/u2net/data/DUTS-TE/DUTS-TE-Image-jpg/' # 已知 内容较少的文件夹
file_path2 = 'D:/u2net/data/DUTS-TE/DUTS-TE-Mask-jpg/'
os.makedirs('D:/u2net/data/DUTS-TE/temp',exist_ok=True)# 临时文件夹,存放被移除的数据
f1 = []
f2 = []
for filename in os.listdir(file_path1):
f1.append(filename)
# print(f1)
#将两个文件夹内的文件名不同的提出来
for filename2 in os.listdir(file_path2):
if filename2 not in f1:
shutil.move(file_path2 + filename2, 'D:/u2net/data/DUTS-TE/temp/' + filename2) #文件夹需要创建
shutil.rmtree('D:/u2net/data/DUTS-TE/temp/')
注意,代码考虑的情况是后缀名也完全相同,如果后缀名不同,则需要把文件名单独提取出来进行比对,使用 jpg_name = os.path.splitext(filename)[0]即可。