Data Jun 2025. 3. 24. 09:57

폴더 정리나 프로젝트 파일 관리할 때, 확장자를 제외한 파일 이름만 필요한 경우가 있죠?
이번 글에서는 os.walk()로 하위 폴더까지 탐색하면서 파일 목록을 가져오고, 그 중 확장자를 제거한 이름만 출력하는 코드를 만들어봅니다.

 

목표

  • 폴더 내 모든 디렉토리 구조를 탐색하고
  • 각 폴더 안의 파일 목록을 확장자 없이 출력
  • 깔끔한 폴더 구조 탐색 자동화 완성!

 

🧑‍💻 코드 예시

import os

root_dir = "mycodeit"

for path, dirs, files in os.walk(root_dir):
    print("디렉토리: {}".format(path))

    if dirs:
        print("하위 디렉토리: {}".format(", ".join(dirs)))
    else:
        print("하위 디렉토리: 없음")
    
    if files:
        file_names = [os.path.splitext(f)[0] for f in files]
        print("파일 목록: {}".format(", ".join(file_names)))

    print()  # 줄바꿈

 

 

🖥️ 출력 예시

디렉토리: mycodeit
하위 디렉토리: coding, study
파일 목록: readme

디렉토리: mycodeit/coding
하위 디렉토리: migrations
파일 목록: app, utils

디렉토리: mycodeit/coding/migrations
하위 디렉토리: 없음

디렉토리: mycodeit/study
하위 디렉토리: migrations
파일 목록: notes

 

핵심 포인트

 

활용 팁

  • 파일명을 기반으로 목차 만들기, 보고서 리스트 출력 등에 활용 가능
  • .md, .py, .txt 등 다양한 형식의 파일명 비교/관리할 때 유용
  • 확장자까지 필요하다면 os.path.splitext(f)[1]로 분리해서 활용도 가능

 

이처럼 os 모듈만으로도 폴더 구조를 자유롭게 탐색하고,
확장자 제거, 필터링, 정렬 등 다양한 방식으로 정보를 다룰 수 있어요.