需求:
脚本操作不同文件夹里的相同或不同格式的文件时较麻烦,合并到同一文件夹下进行操作比较方便快捷。
实现:
使用python+shutil将不同文件夹里的相同或不同格式的文件合并到同一文件夹。代码如下:
import os
import glob
import shutil
def merge_txt_jpg(source_txts_path,source_jpgs_path,target_path):
txt_list = glob.glob(os.path.join(source_txts_path, "*.txt"))
jpg_list = glob.glob(os.path.join(source_jpgs_path,"*.jpg"))
index = 0
for txt_path in txt_list:
shutil.copyfile(txt_path, os.path.join(target_path,txt_path.split("/")[-1]))
print(txt_path, index)
index += 1
index = 0
for jpg_path in jpg_list:
shutil.copyfile(jpg_path, os.path.join(target_path, jpg_path.split("/")[-1]))
print(jpg_path, index)
index += 1
if __name__ == '__main__':
target_path = "/home/PycharmProjects/data/val"
source_txts_path = "/home/PycharmProjects/detect_t/VOCdevkit/labels/val"
source_jpgs_path = "/home/PycharmProjects/detect_t/VOCdevkit/images/val"
merge_txt_jpg(source_txts_path,source_jpgs_path,target_path)
使用以上代码需要修改原文件所在文件夹路径(source_txts_path、source_jpgs_path)和目标文件夹路径(targetpath)。亲测可用。