# 분류되지 않은 답안파일 원본 폴더에서 복사할 때 사용 import os import shutil import unicodedata def copy_dic_subdirs(source_root, target_root_a, target_root_b, target_root_c, target_root_d, target_root_e): for root, dirs, files in os.walk(source_root): for dir_name in dirs: if dir_name.lower() == 'diw': # DIW 디렉토리 탐색 parent_dir = os.path.basename(os.path.dirname(os.path.join(root, dir_name))) target_root = None parent_dir = unicodedata.normalize('NFC', parent_dir) # 부모 디렉토리가 '2교시'인지, '3교시'인지 확인 if parent_dir == '1교시': target_root = target_root_a elif parent_dir == '2교시': target_root = target_root_b elif parent_dir == '3교시': target_root = target_root_c elif parent_dir == '4교시': target_root = target_root_d elif parent_dir == '5교시': target_root = target_root_e if target_root: source_dic_path = os.path.join(root, dir_name) target_dir_name = dir_name.upper() target_dic_path = os.path.join(target_root, target_dir_name) # DIC 하위 디렉토리와 파일 복사 shutil.copytree(source_dic_path, target_dic_path, dirs_exist_ok=True) print(f"Copied {source_dic_path} to {target_dic_path}") test_folder_path = os.path.join(target_root, "TEST") os.makedirs(test_folder_path, exist_ok=True) else: print(f"Skipping {dir_name} under {parent_dir}, as it doesn't match '2교시' or '3교시'.") # 사용법 # exam_round = "2504_2" exam_round = "2510" # exam_round = "2510_4" # source_directory = r"D:\project\data\제2510회 수시2(제주)\답안파일\제2510회 수시2 제주지부_답안파일" source_directory = r"D:\project\HWP\HWP-Scoring\회차별채점자료\2510" target_directory_a = f".\\input\\{exam_round}\\A" # '1교시'의 타겟 경로 target_directory_b = f".\\input\\{exam_round}\\B" # '2교시'의 타겟 경로 target_directory_c = f".\\input\\{exam_round}\\C" # '3교시'의 타겟 경로 target_directory_d = f".\\input\\{exam_round}\\D" # '4교시'의 타겟 경로 target_directory_e = f".\\input\\{exam_round}\\E" # '5교시'의 타겟 경로 copy_dic_subdirs(source_directory, target_directory_a, target_directory_b, target_directory_c, target_directory_d, target_directory_e)