[파이썬 코딩]파일 할당 코드 질문이요
대량의 파일을 각각의 경로에 이동시키려고합니다.
엑셀에
파일명, 현재 저장경로, 이동하고싶은 저장경로 컬럼으로 구성되어있다고 가정하여
파이썬 코드 부탁드려요
안녕하세요. 지적인오솔개30입니다.
다음과 같은 코드를 사용할 수 있습니다.Python
import os import pandas as pd # 엑셀 파일 열기 df = pd.read_excel("파일경로.xlsx") # 파일 이름, 현재 저장경로, 이동할 저장경로 추출 filename = df["파일명"] current_path = df["현재 저장경로"] target_path = df["이동할 저장경로"] # 파일 이동 for i in range(len(filename)): # 파일명과 현재 경로를 조합하여 파일 경로 생성 source_path = os.path.join(current_path, filename[i]) # 이동할 경로에 파일을 복사 os.system(f"cp {source_path} {target_path}")
코드를 사용할 때는 주의하시기 바랍니다. 자세히 알아보기
content_copy
이 코드는 다음과 같이 작동합니다.
먼저, pandas 라이브러리를 사용하여 엑셀 파일을 읽어옵니다.
read_excel() 함수의 sheet_name 인수를 사용하여 특정 시트를 읽어올 수 있습니다.
파일명, 현재 저장경로, 이동할 저장경로 컬럼을 추출합니다.
for 루프를 사용하여 각 파일에 대해 반복합니다.
os.path.join() 함수를 사용하여 파일명과 현재 경로를 조합하여 파일 경로를 생성합니다.
os.system() 함수를 사용하여 파일을 이동합니다.
예를 들어, 엑셀 파일이 다음과 같이 구성되어 있다고 가정합니다.
파일명 | 현재 저장경로 | 이동할 저장경로 ------- | -------- | -------- test1.txt | C:\Users\user\Desktop | C:\Users\user\Documents test2.txt | C:\Users\user\Downloads | C:\Users\user\Pictures
이 코드를 실행하면 다음과 같이 파일이 이동됩니다.
C:\Users\user\Desktop\test1.txt -> C:\Users\user\Documents\test1.txt C:\Users\user\Downloads\test2.txt -> C:\Users\user\Pictures\test2.txt
이 코드를 수정하여 필요에 맞게 사용할 수 있습니다. 예를 들어, 파일이 이동되기 전에 확인 메시지를 표시하거나, 파일이 이동되지 못하는 경우 예외를 처리하는 등의 작업을 추가할 수 있습니다.