Python에서 현재 작업 디렉터리를 얻는 방법
Grace Collins
Solutions Engineer · Leapcell

Key Takeaways
os.getcwd()
또는Path.cwd()
를 사용하여 현재 작업 디렉터리를 검색할 수 있습니다.pathlib.Path.cwd()
는 Python에서 경로 처리를 위한 현대적인 권장 방법입니다.- 작업 디렉터리를 이해하는 것은 상대 파일 경로를 다룰 때 필수적입니다.
Python에서 파일 시스템을 사용할 때 현재 작업 디렉터리(CWD)를 알아야 하는 경우가 많습니다. 현재 작업 디렉터리는 Python 스크립트가 실행 중인 폴더이거나 상대 파일 작업의 기준이 되는 폴더입니다. Python은 내장된 os
및 pathlib
모듈을 사용하여 이 정보에 액세스하는 간단한 방법을 제공합니다. 이 문서에서는 현재 작업 디렉터리를 검색하는 여러 가지 접근 방식을 살펴보겠습니다.
os
모듈 사용
os
모듈은 현재 작업 디렉터리를 가져오는 간단한 메서드 os.getcwd()
를 제공합니다.
import os cwd = os.getcwd() print("현재 작업 디렉터리:", cwd)
이렇게 하면 현재 작업 디렉터리의 절대 경로가 출력됩니다. 예를 들면 다음과 같습니다.
현재 작업 디렉터리: /Users/yourname/projects/myapp
pathlib
모듈 사용 (최신 Python에서 권장)
Python 3.4부터 pathlib
모듈은 파일 시스템 경로에 대한 객체 지향 인터페이스를 제공합니다. 이제 Python에서 파일 시스템 경로를 처리하는 데 선호되는 방법입니다.
from pathlib import Path cwd = Path.cwd() print("현재 작업 디렉터리:", cwd)
이렇게 하면 동일한 결과가 나오지만 경로 조작을 수행할 때 더 유연한 Path
객체가 반환됩니다.
os.getcwd()
vs Path.cwd()
비교
메서드 | 반환 유형 | Python 버전 | 참고 사항 |
---|---|---|---|
os.getcwd() | str | 모든 버전 | 더 간단하고 널리 지원됨 |
Path.cwd() | Path 객체 | 3.4+ | 새로운 코드베이스에 권장됨 |
실용적인 팁
- 작업 디렉터리를 변경하려면
os.chdir(path)
를 사용할 수 있습니다. - 상대 경로를 사용하여 파일을 열기 전에 항상 현재 작업 디렉터리를 확인하십시오.
- 더 안전한 경로 구성을 위해
.joinpath()
및.resolve()
와 같은Path
메서드를 사용하십시오.
결론
스크립트를 작성하든 더 큰 애플리케이션을 구축하든 현재 작업 디렉터리를 가져오는 방법을 아는 것은 중요한 기술입니다. os.getcwd()
와 Path.cwd()
모두 유효하지만 pathlib
를 사용하면 더 강력하고 현대적인 경로 처리 기능을 제공합니다.
FAQs
os.getcwd()
는 문자열을 반환하고 Path.cwd()
는 경로 작업을 지원하는 Path
객체를 반환합니다.
예, os.chdir(path)
를 사용하여 작업 디렉터리를 변경합니다.
더 깔끔한 객체 지향 경로 조작을 위해 최신 Python(3.4+)에서 pathlib
를 사용하십시오.
Leapcell은 Python 프로젝트 호스팅을 위한 최고의 선택입니다.
Leapcell은 웹 호스팅, 비동기 작업 및 Redis를 위한 차세대 서버리스 플랫폼입니다.
다국어 지원
- Node.js, Python, Go 또는 Rust로 개발하십시오.
무제한 프로젝트 무료 배포
- 사용량에 대해서만 지불하십시오. 요청도 없고 요금도 없습니다.
탁월한 비용 효율성
- 유휴 요금 없이 사용한 만큼 지불하십시오.
- 예: $25는 평균 응답 시간 60ms에서 694만 건의 요청을 지원합니다.
간소화된 개발자 경험
- 간편한 설정을 위한 직관적인 UI.
- 완전 자동화된 CI/CD 파이프라인 및 GitOps 통합.
- 실행 가능한 통찰력을 위한 실시간 메트릭 및 로깅.
손쉬운 확장성 및 고성능
- 쉬운 동시성 처리를 위한 자동 확장.
- 운영 오버헤드가 없으므로 구축에만 집중하십시오.
설명서에서 자세한 내용을 알아보십시오!
X에서 팔로우하세요: @LeapcellHQ