import os
import shutil

folder = r"d:\mypython\myprojects\单子\咸鱼大学生\未完成\2026-4\可删\简单脚本\140"
images_dir = os.path.join(folder, "images")
jsons_dir = os.path.join(folder, "jsons")

os.makedirs(images_dir, exist_ok=True)
os.makedirs(jsons_dir, exist_ok=True)

files = os.listdir(folder)
jpgs = {os.path.splitext(f)[0] for f in files if f.lower().endswith(".jpg")}
jsons = {os.path.splitext(f)[0] for f in files if f.lower().endswith(".json")}

# 删除没有对应json的图片
no_annotation = jpgs - jsons
for name in no_annotation:
    path = os.path.join(folder, name + ".jpg")
    os.remove(path)
    print(f"删除未标注图片: {name}.jpg")

# 移动有标注的图片到 images/
for name in jpgs & jsons:
    shutil.move(os.path.join(folder, name + ".jpg"), os.path.join(images_dir, name + ".jpg"))

# 移动json到 jsons/
for name in jsons:
    shutil.move(os.path.join(folder, name + ".json"), os.path.join(jsons_dir, name + ".json"))

print(f"\n完成！删除 {len(no_annotation)} 张未标注图片，移动 {len(jpgs & jsons)} 张图片和 {len(jsons)} 个json文件")
