라이브러리란 파이썬 사용자들이 편의를 위해 만든 편리한 기능들을 말합니다. 파이썬은 매우 다양한 라이브러리를 가진 것이 큰 장점입니다. 이 장에서는 필수적이고 편리란 라이브러리를 배워보려고 합니다.

shutil

셸 유틸리티 라고도 불리며 파일처리에 대한 높은 수준의 작업을 제공합니다. 특히 파일을 복사,이동, 이름변경 및 제거등을 지원하는 기능이 제공됩니다.

shutil 모듈 사용하기

import shutil

shutil 모듈은 이미 파이썬에 내장되어 있으므로 따로 설치할 필요 없이 import 를 통해서 불러낼 수 있습니다.

파일 복사하기-shutil.copy(,)

첫 번째로 파일 복사하기입니다. 파일을 복사하기 위해 사용되는 함수는 shutil.copy(,)입니다. 이 예제에서 egg.txt라는 파일을 사용해 보았습니다.

shutil.copy('C:/workplace/egg.txt','C:/workplace/Temp')
#workplace폴더의 egg.txt 를 workplace폴더의 Temp폴더 안으로 복사

이 경우 workplace폴더의 egg.txt 를 temp폴더로 복사할 수 있습니다.

참고로 터미널의 경로를 설정할 경우 파일명과 디렉터리명만 나열할 수 있습니다.

shutil.copy('C:/workplace/egg.txt','C:/workplace/eggcopy.txt')
#egg.txt 파일을 eggcopy.txt라는 이름의 파일로 복사
#위치는 같음

이 경우에는 원본파일인 egg.txt의 복사본인 eggcopy.txt라는 새 파일이 생성됩니다. 실제 구성내용도 동일하게 복사됩니다.

shutil.copy('C:/workplace/egg.txt','C:/workplace/egg.txt')
#파일 이름이 같다면 오류로 처리됨

한가지 유의할 점은 만일 파일 이름이 같다면 오류로 처리됩니다.

파일 이동하기-shutil.move(,)

파일 이동은 파일을 대상으로 잘라서 붙혀넣는 작업을 수행하는 것과 유사합니다. '파일 복사하기'에서는 원본 파일을 원래 위치에 그대로 두면서 파일의 복사본을 만드는 방법을 살펴봤습니다.

이번에는 파일을 원래 위치에서 제거함과 동시에 파일을 새 위치로 옮기는(잘라내기) 방법을 살펴보겠습니다. 이 작업은 shutil.move(,)  함수를 이용해 간단히 수행됩니다.