Programming/Python Code

개별 폴더에 있는 파일을 사용자가 지정한 경로로 한번에 이동하고 싶을 때

레드마티즈 2024. 10. 28. 12:16
728x90

일자별 데이터 분석을 위해 데이터 파일을 받았는데 아래와 같이 개별 폴더에 파일이 각각 있는 경우가 있으셨나요?

 

한달치 일별 데이터를 CSV(Comma Seperated Value) 파일로 받아서 CSV 파일을 하나로 병합 후, 데이터 분석을 하려고 하는데 CSV 파일을 폴더 하나하나에서 꺼내서 이동하는 과정이 상당히 번거롭더군요.

 

위와 같은 문제를 Python으로 해결할 수 있는 간단한 코드를 소개합니다.

 

D:\merge 경로 아래 일자별 폴더내에 있는 개별 파일을 D:\merge 폴더로 모두 꺼내주는 코드 입니다.

import os
import shutil

# 상위 폴더 경로 설정
base_folder = r"D:\merge"

# 하위 폴더 내 파일을 한 단계 상위 폴더로 이동
for root, dirs, files in os.walk(base_folder):
    for file in files:
        # 현재 파일 경로
        file_path = os.path.join(root, file)

        # 파일을 상위 폴더로 이동
        shutil.move(file_path, base_folder)

print("모든 파일이 상위 폴더로 이동되었습니다!")

 

코드를 실행하면 아래와 같이 개별 폴더 하위 파일들이 한 단계 위로 이동된 것을 확인하실 수 있습니다.

(개인정보 보호 목적으로 파일명은 모자이크 처리 하였습니다.)

 

감사합니다.

 

'Programming > Python Code' 카테고리의 다른 글

여러개의 CSV 파일을 하나로 병합할 때  (2) 2024.11.01