반응형

파이썬 파일 및 디렉토리 삭제하는 방법

 

파이썬에서 파일을 삭제하는 방법은 os 모듈의 remove()함수가 사용됩니다

 

간단한 사용방법은 아래와 같습니다

 

import os

os.remove(경로,옵션)

 

첫번째 줄은 해당 함수를 사용하기위해 os 함수를 임포트(가져오기)하는 명령어입니다

두번째 줄은 해당 함수를 사용하는 방법이구요 

두번째줄의 첫번째 경로 인자값은 파일위치 및 이름을 입력하고

두번째줄의 두번째 인자는 선택옵션으로 디렉토리와 관련된 값을 설정하는데 사용됩니다

경로값은 절대경로 (예: c:\test.txt)를 사용해도 되고 상대경로 (예: test.txt)를 사용해도 됩니다

주의:파이썬에서 \는 특수문자로 인식하므로 \\처럼 두번 입력해야 경로를 제대로 인식합니다

 

예시:

import os

os.remove('c:\\test.txt')

 

위의 코드는 c드라이브에 test.txt 란 파일을 삭제하는 예제이며 

만약 test.txt 라는 파일이 없다면 에러메세지를 나타냅니다

 

이런 경우를 막기 위해  파일이 존재하는지 확인하는 명령을 추가해주면됩니다

 

예시:

import os

if os.path.isfile('c:\\test.txt'):

   os.remove('c:\\test.txt')

 

위와 같이 코드를 작성하면 파일이 존재하는 경우에만 삭제되므로 에러를 방지할 수 있습니다

 

한 가지 더 응용해본다면 

 

예시:

import os

if os.path.isfile('c:\\test.txt'):

   os.remove('c:\\test.txt')

   print("파일 삭제완료")

else:

   print("파일 없음")

 

이런식으로 코드를 작성하면 파일이 존재하는 경우 파일을 삭제하고 파일 삭제 완료라는

문자를 출력해주고 파일이 없다면 "파일없음" 이란 글자를 출력해줍니다.

 

이제 디렉토리를 삭제하는 방법도 알아보겠습니다

방법은 파일삭제와 동일하며 rmdir이란 함수를 사용하면됩니다

 

예시:

import os

os.rmdir('c:\\디렉토리명')

 

rmdir함수의 경우 비어있는 디렉토리만 삭제가능하며 디렉토리안에 파일이 있는 경우

에러를 나타내며 삭제하지 않습니다

 

그래서 파일과 디렉토리를 전부 삭제하고 싶을 경우에는 다음 함수를 사용합니다

 

import shutil

shutil.rmtree('c:\\디렉토리명')

 

파일 또는 폴더명을 바꾸고 싶을 경우에는 

 

import os

os.rename(현재이름,바꾸고싶은이름)

 

폴더를 만들고 싶은 경우는 

import os

os.mkdir(디렉토리명)

 

 

 

반응형

+ Recent posts