기록하는삶

[파이썬/Python] 모든 하위 디렉토리 탐색, 특정 확장자 찾기 본문

AI/파이썬(Python)

[파이썬/Python] 모든 하위 디렉토리 탐색, 특정 확장자 찾기

mingchin 2021. 12. 2. 23:47
728x90
반응형

특정 경로에 존재하는 모든 하위 디렉토리를 탐색하며 원하는 파일을 찾고자 하는 때가 있다. 이때 활용할 수 있는 것이 os.walk 또는 glob.glob이다.

import os

for (path, dir, files) in os.walk("D:/"):
    for filename in files:
        ext = os.path.splitext(filename)[-1]
        if ext == '.ipynb':
            print("%s/%s" % (path, filename))

위의 코드는 D:/ 드라이브의 하위폴더에서 확장자가 .ipynb인 모든 파일을 탐색하고 출력한 예시이다. os.walk(시작폴더)는 시작 위치로부터 모든 하위 폴더를 차례대로 방문하게 해주는 함수라고 한다. (출처: 점프 투 파이썬)

 

glob 모듈은 특정 형식의 파일명을 찾는 데에 좀 더 편리한 기능을 제공하기도 한다.

import glob

# '*'는 임의 길이의 모든 문자열을 의미한다.
glob.glob('D:/*.txt')

# '?'는 한자리의 문자를 의미한다.
glob.glob('D:/맞춤법 오?.txt')

glob.glob(경로)는 특정 형식을 갖춘 파일의 경로들을 리스트 형태로 반환한다.

 

728x90
반응형