删除所有没有相应 .xml 文件的 .jpg 文件

Delete all .jpg files that do not have a corresponding .xml file

我正在处理一个数据集,其中有一些文件“.jpg”在文件夹中没有相应的标签“.xml”,我想删除或移动所有“.jpg”文件没有相应的标签“.xml”。 我在这里搜索过类似的问题,但我没有这样做。 这是文件夹的外观图像 Folder with the files

有些图像的标签为 .xml 文件,我只想删除没有相应 .xml 标签的 .jpg 文件。

import os

files = os.listdir(“directorylocation”)
for i in range(len(files)):
    if files[i].split(“.”)[0] + “.xml” not in files:
        #remove this file

这应该列出目录中的所有文件,如果没有匹配的 .xml 文件

,则可以用它做任何你想做的事

此代码将删除所有没有相应 .xml 文件的 .jpg 文件和所有没有相应 .jpg 文件的 .xml 文件

  import os

files = os.listdir("training")
for i in files:
    for j in os.listdir("training/"+i):
        if (j.split(".")[0] + ".xml" not in os.listdir("training/"+i)) or (j.split(".")[0] + ".jpg" not in os.listdir("training/"+i)) :
        
            print(j)
            os.remove("training/"+i+"/"+j)