포스트

파이썬에서 파일 경로로부터 확장자 없는 파일명 얻기

개요

파이썬에서 파일 경로를 다룰 때, 종종 파일의 이름만 필요한 경우가 있습니다. 이 때 확장자까지 포함된 이름이 아니라 확장자를 제외한 순수한 파일 이름만 필요할 수도 있습니다. 이러한 작업을 할 때 사용할 수 있는 다양한 방법들을 상세하게 설명하겠습니다.

os.path 모듈을 사용한 방법

os.path 모듈은 파일과 디렉토리 경로를 다루는 데 매우 유용한 파이썬 표준 라이브러리입니다. os.path.splitext() 함수를 사용하면 파일 이름과 확장자를 쉽게 분리할 수 있습니다.

1
2
3
4
5
6
import os

def get_filename_without_extension(path):
    filename = os.path.basename(path)
    filename_without_extension = os.path.splitext(filename)[0]
    return filename_without_extension

코드 설명

  • os.path.basename(path): 주어진 경로에서 파일 이름을 추출합니다.
  • os.path.splitext(filename): 파일 이름을 이름 부분과 확장자 부분으로 나눕니다. 이 함수는 튜플(tuple)을 반환합니다.

pathlib 모듈을 사용한 방법

pathlib은 Python 3.4 이상에서 사용할 수 있는 라이브러리로, 경로 관련 작업을 객체 지향적으로 처리할 수 있습니다.

1
2
3
4
5
from pathlib import Path

def get_filename_without_extension(path):
    path = Path(path)
    return path.stem

코드 설명

  • Path(path): pathlib.Path 객체를 생성합니다.
  • path.stem: 경로 객체에서 확장자를 제외한 파일 이름을 반환합니다.

정리

파일 경로로부터 확장자 없는 파일명을 얻는 것은 매우 일반적인 작업입니다. os.pathpathlib 라이브러리를 활용하면 이 작업을 간단하고 효율적으로 수행할 수 있습니다. 어떤 방법을 선택할지는 프로젝트의 요구사항과 개인의 취향에 따라 다를 수 있습니다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.