포스트

파이썬에서 현재 파일의 전체 경로 얻기

문제 정의

파이썬에서 코드가 실행되고 있는 현재 파일의 전체 경로를 얻는 방법에 대해 알아보겠습니다. 이 정보는 파일 경로에 대한 조작이나 다른 파일과의 상대적인 위치를 파악할 때 유용합니다.

os 모듈 활용

os 모듈은 운영 체제와 상호 작용하는 파이썬 라이브러리입니다. os.path.abspath 함수와 __file__ 변수를 함께 사용하여 현재 파일의 절대 경로를 얻을 수 있습니다.

1
2
3
import os

current_file_path = os.path.abspath(__file__)
  • os.path.abspath: 절대 경로를 반환하는 함수입니다.
  • __file__: 현재 파일의 이름과 상대 경로를 가진 문자열입니다.

pathlib 모듈 활용

pathlib은 파일 시스템 경로를 객체지향적으로 다루는 라이브러리입니다. Path 클래스의 resolve 메소드를 사용하면 현재 파일의 전체 경로를 얻을 수 있습니다.

1
2
3
from pathlib import Path

current_file_path = Path(__file__).resolve()
  • Path: 파일과 디렉토리 경로를 다루는 클래스입니다.
  • resolve: 경로를 절대 경로로 변환하는 메소드입니다.

주의사항

위의 코드는 파이썬 스크립트가 실행되는 동안만 유효합니다. REPL(Read-Eval-Print Loop, 대화형 프로그래밍 환경)에서는 __file__ 변수가 정의되지 않으므로 작동하지 않을 수 있습니다.

결론

파이썬에서 현재 파일의 전체 경로를 얻는 방법은 여러 가지가 있지만, os 모듈과 pathlib 모듈을 활용하는 것이 가장 효과적입니다. 어떤 방법을 선택할지는 사용자의 환경과 요구 사항에 따라 달라질 수 있습니다.

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