| 1234567891011121314151617181920212223242526272829 |
- # 按照比例随机删除某个路径下的图像
- import os
- import random
- def main():
- # TODO:需要修改图像路径
- path = r'D:\code\water_turbidity_det\label_data_tem\2_ch52_20260113011503_0'
- 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()
|