Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬에서 바이너리 파일을 복사하는 방법

파이썬에서 파일을 복사하려면 표준 라이브러리의 shutil 모듈을 사용하는 것이 가장 간단하고 확실한 방법입니다. shutil 모듈은 개별 파일뿐만 아니라 폴더 전체를 복사할 수 있는 다양한 함수를 제공합니다.

shutil.copy() 함수의 기본 사용법

shutil.copy(source, destination)를 호출하면 source 경로에 있는 파일이 destination 경로의 폴더로 복사됩니다. 이때 source와 destination은 모두 문자열 형태의 경로입니다.

만약 destination이 폴더가 아닌 파일 이름이라면, 해당 이름이 복사된 파일의 새로운 이름으로 사용됩니다. 또한 이 함수는 복사된 파일의 전체 경로를 문자열로 반환하므로, 복사 결과를 코드에서 바로 확인하고 활용할 수 있습니다.

예제 코드

>>> import shutil
>>> # 같은 폴더 내에서 다른 이름으로 파일 복사
>>> shutil.copy('original.txt', 'duplicate.txt')
'/home/username/duplicate.txt'
>>> # 다른 폴더로 파일 복사
>>> shutil.copy('original.txt', 'my_folder/duplicate.txt')
'/home/username/my_folder/duplicate.txt'

바이너리 파일 복사하기

위와 동일한 방식으로 바이너리 파일(이미지, 실행 파일, 압축 파일 등)도 문제없이 복사할 수 있습니다. shutil.copy()는 파일을 열고 데이터를 직접 읽고 쓰는 과정을 자동으로 처리해 주기 때문에, 대상 파일이 텍스트인지 바이너리인지 구분할 필요 없이 경로만 지정하면 됩니다.

참고로 원본 파일의 메타데이터(생성 시간, 권한 등)까지 함께 복사하고 싶다면 shutil.copy2()를 사용하는 것도 좋은 선택입니다.