파이썬은 운영 체제와 상호작용하는 데 유용한 os
모듈을 제공합니다. 이 모듈은 파일 및 디렉토리 경로를 작업하기 위한 다양한 함수를 제공하는데, 그 중에서도 가장 중요한 모듈은 os.path
입니다. os.path
모듈은 파일 경로를 안전하게 조작하고 검증하는 데 사용됩니다.
os.path
모듈의 기능
os.path
모듈은 다음과 같은 기능을 제공합니다:
- 파일 및 디렉토리 경로 조작
- 경로 유효성 검사
- 경로 구성요소 추출
- 경로 분리 및 조합
- 경로에 대한 정보 얻기
파일 및 디렉토리 경로 조작
os.path
모듈은 파일 경로를 조작하는 데 사용되는 다양한 함수를 제공합니다. 대표적인 함수는 다음과 같습니다:
os.path.abspath(path)
abspath
함수는 상대 경로를 절대 경로로 변환합니다. 예를 들어,
import os
relative_path = "../data/file.txt"
absolute_path = os.path.abspath(relative_path)
print(absolute_path)
출력:
/Users/username/projects/data/file.txt
os.path.join(path1, path2, ...)
join
함수는 여러 개의 경로를 연결하여 새로운 경로를 생성합니다. 예를 들어,
import os
path1 = "/home/user"
path2 = "documents"
new_path = os.path.join(path1, path2)
print(new_path)
출력:
/home/user/documents
경로 유효성 검사
os.path
모듈은 경로의 유효성을 검사하는 함수도 제공합니다. 대표적인 함수는 다음과 같습니다:
os.path.exists(path)
exists
함수는 경로가 존재하는지 확인합니다. 예를 들어,
import os
path = "/path/to/file.txt"
exists = os.path.exists(path)
print(exists)
출력:
True
os.path.isfile(path)
isfile
함수는 경로가 파일인지 확인합니다. 예를 들어,
import os
path = "/path/to/file.txt"
is_file = os.path.isfile(path)
print(is_file)
출력:
True
경로 구성요소 추출
os.path
모듈은 경로의 구성요소를 추출하는 함수도 제공합니다. 대표적인 함수는 다음과 같습니다:
os.path.basename(path)
basename
함수는 경로의 기본 이름을 반환합니다. 예를 들어,
import os
path = "/path/to/file.txt"
basename = os.path.basename(path)
print(basename)
출력:
file.txt
os.path.dirname(path)
dirname
함수는 경로의 디렉토리 이름을 반환합니다. 예를 들어,
import os
path = "/path/to/file.txt"
dirname = os.path.dirname(path)
print(dirname)
출력:
/path/to
경로 분리 및 조합
os.path
모듈은 경로를 분리하고 조합하는 함수도 제공합니다. 대표적인 함수는 다음과 같습니다:
os.path.split(path)
split
함수는 디렉토리 경로와 기본 이름을 분리하여 튜플로 반환합니다. 예를 들어,
import os
path = "/path/to/file.txt"
directory, filename = os.path.split(path)
print(directory, filename)
출력:
/path/to file.txt
os.path.splitext(path)
splitext
함수는 파일 경로와 확장자를 분리하여 튜플로 반환합니다. 예를 들어,
import os
path = "/path/to/file.txt"
file, extension = os.path.splitext(path)
print(file, extension)
출력:
/path/to/file .txt
경로에 대한 정보 얻기
os.path
모듈은 경로에 대한 정보를 얻는 함수도 제공합니다. 대표적인 함수는 다음과 같습니다:
os.path.getsize(path)
getsize
함수는 파일의 크기를 바이트 단위로 반환합니다. 예를 들어,
import os
path = "/path/to/file.txt"
size = os.path.getsize(path)
print(size)
출력:
1024
os.path.getmtime(path)
getmtime
함수는 파일의 최종 수정 시간을 반환합니다. 반환되는 값은 에포크 시간으로 표시됩니다. 예를 들어,
import os
from datetime import datetime
path = "/path/to/file.txt"
mtime = os.path.getmtime(path)
dt = datetime.fromtimestamp(mtime)
print(dt)
출력:
2021-10-01 12:34:56
os.path
모듈은 파일 및 디렉토리 경로를 다루는 데 매우 유용한 기능을 제공합니다. 이를 활용하여 파일 경로를 조작하고 유효성을 검사하는 등의 작업을 보다 쉽고 안전하게 수행할 수 있습니다.