본문 바로가기
코딩취미/Python

전체 파일경로에서 파일명과 폴더경로를 분리하는 방법 : os , pathlib 사용

by 브링블링 2024. 6. 12.
반응형

전체 파일경로에서 파일명과 폴더경로를 분리하는 방법 : os , pathlib 사용

파일 시스템을 다루다 보면 전체 파일 경로에서 파일명과 폴더 경로를 분리해야 하는 경우가 많습니다. 예를 들어, 파일을 특정 폴더에 저장하거나, 파일 이름만을 추출하여 사용해야 할 때 이러한 작업이 필요합니다. Python에서는 이러한 작업을 간편하게 수행할 수 있도록 여러 모듈을 제공합니다. 그 중에서도 특히 많이 사용되는 모듈이 os와 pathlib입니다. os 모듈은 전통적인 방식으로, pathlib 모듈은 객체 지향적이고 더욱 직관적인 방식으로 파일 경로를 다룰 수 있게 해줍니다.

 

1. os 모듈

os 모듈은 운영 체제와 상호작용할 수 있는 다양한 기능을 제공합니다. 파일 및 디렉터리 경로를 다루기 위한 함수들도 포함되어 있어, 파일명과 폴더 경로를 분리할 때 유용하게 사용할 수 있습니다.

주요 함수

  • os.path.basename(path): 주어진 경로에서 파일명을 반환합니다.
  • os.path.dirname(path): 주어진 경로에서 폴더 경로를 반환합니다.
import os

# 전체 파일 경로
file_path = "/home/user/documents/example.txt"

# 파일명 추출
file_name = os.path.basename(file_path)
print("파일명:", file_name)  # 출력: example.txt

# 폴더 경로 추출
folder_path = os.path.dirname(file_path)
print("폴더 경로:", folder_path)  # 출력: /home/user/documents
반응형

2. pathlib 모듈

pathlib 모듈은 객체 지향적 인터페이스를 제공하여 파일 시스템 경로를 쉽게 다룰 수 있게 해줍니다. 이 모듈을 사용하면 경로 조작이 더욱 직관적이고 간편해집니다

주요 클래스 및 메서드

  • Path(path): 경로 객체를 생성합니다.
  • Path.name: 파일명을 반환합니다.
  • Path.parent: 부모 디렉터리 경로를 반환합니다.
from pathlib import Path

# 전체 파일 경로
file_path = Path("/home/user/documents/example.txt")

# 파일명 추출
file_name = file_path.name
print("파일명:", file_name)  # 출력: example.txt

# 폴더 경로 추출
folder_path = file_path.parent
print("폴더 경로:", folder_path)  # 출력: /home/user/documents

 

 

반응형