# 按照比例随机删除某个路径下的图像
import os
import random

def main():
    # TODO：需要修改图像路径
    path = r'D:\code\water_turbidity_det\frame_data\1_ch25_20260105084338'
    del_rate = 0.3
    img_path = [i for i in os.listdir(path) if i.split('.')[-1] in ['jpg', 'png'] ]
    is_del = input(f'{path}路径内共有{len(img_path)}张图片，是否删除{del_rate}比例的图片？(y/n): ')
    is_change_rate = input('是否修改删除比例？(y/n): ')
    if is_change_rate.lower() == 'y':
        del_rate = float(input('请输入删除比例：'))
    if is_del.lower() == 'y':
        random.shuffle(img_path)
        del_list = img_path[:int(len(img_path)*del_rate)]
        for i in del_list:
            target_path = os.path.join(path, i)
            if os.path.isfile(target_path):  # 或者使用 os.path.exists(file_path)
                os.remove(target_path)
                print("文件删除成功。",target_path)
        print(f"文件数量: {len(img_path)}")
        print(f"删除比例: {del_rate}")
        print(f"删除数量: {len(del_list)}")
        print(f'剩余数量: {len(img_path)-len(del_list)}')
    else:
        exit()
if __name__ == '__main__':
    main()