파이썬 폴더 관리 명령어 os - 빈폴더, 파일 존재 확인

오늘은 파이썬에서 폴더와 파일이 있는지 여부를 확인하는 OS명령어를 알아보겠습니다.

 

OS명령어

파이썬에서 OS 명령어는 운영체제와 관련된 다양한 서비스를 제공합니다.

https://docs.python.org/ko/3/library/os.html

 

os — Miscellaneous operating system interfaces

Source code: Lib/os.py This module provides a portable way of using operating system dependent functionality. If you just want to read or write a file see open(), if you want to manipulate paths, s...

docs.python.org

이 중에서 파이썬의 os.listdir() 함수는 지정 경로의 디렉토리 내의 모든 파일 이름을 리스트로 반환하는 역활을 합니다.

 

아래의 예시처럼 import os로 패키지를 불러오고 파일 디렉토리를 불러온 다음 리스트를 불러오겠습니다.

 

파일 경로에 r'를 사용하는 이유는 리눅스나 윈도우의 경우 폴더의 이름이 \ / 등등으로 다를 수 있는데요.

 

어떤 방식을 사용하여도 폴더를 나타낸다고 정한 규칙입니다.

 

os.path.isdir은 폴더가 있는지를 알려주는 명령어입니다.

 

또한 os.path.isfile은 파일이 있는지를 나타내는 명령어 입니다.

 

import os

fileDir = r'e:\test'

print(os.listdir(fileDir))
print(os.path.isdir(fileDir))

실제로 해당 폴더에 있는 3개의 파일을 리스트로 불러오는 것을 알 수 있습니다.

그리고 이제 특정 확장자만 찾는 방법도 있는데요.

 

방금 사용한 listdir과 endswith()를 활용하는 것인데요.

 

endswith()는 특정 문자열에서 제시한 것이 있는지 없는지 확인하는 함수입니다.

Dir = r'e:\test'
fileEx = r'.xlsx'
xlsx = [file for file in os.listdir(Dir) if file.endswith(fileEx)]
print(xlsx)

이렇게 하면 엑셀파일만 불러오게 됩니다.

이렇게 파이썬을 통해서 해당 파일이 있는지 해당 폴더가 존재하는지를 확인해서 사용할 수 있습니다