SeouliteLab

[Python/파이썬] 폴더와 파일명으로 경로 생성하기: os.path.join() 본문

프로그래밍

[Python/파이썬] 폴더와 파일명으로 경로 생성하기: os.path.join()

Seoulite Lab 2024. 3. 4. 08:15

Python의 os.path.join() 함수는 운영체제에 따라 올바른 경로 구분자를 사용하여 폴더와 파일명을 결합하여 경로를 생성해줍니다. 이 함수를 사용하면 코드를 보다 이식 가능하고 안정적으로 만들 수 있습니다.

1. 기본적인 사용법

가장 간단한 예제로, 폴더와 파일명을 결합하여 경로를 생성해보겠습니다.

import os

folder = "data"
filename = "file.txt"

path = os.path.join(folder, filename)
print(path)  # 출력 결과: data/file.txt

2. 여러 개의 경로 결합하기

os.path.join() 함수를 여러 번 사용하여 여러 개의 경로를 결합할 수 있습니다.

import os

folder = "data"
subfolder = "images"
filename = "photo.jpg"

path = os.path.join(folder, subfolder, filename)
print(path)  # 출력 결과: data/images/photo.jpg

3. 절대 경로 생성하기

절대 경로를 생성하려면 첫 번째 인자로 절대 경로를 제공하면 됩니다.

import os

base_path = "/home/user"
folder = "data"
filename = "file.txt"

path = os.path.join(base_path, folder, filename)
print(path)  # 출력 결과: /home/user/data/file.txt

4. 경로에서 확장자 변경하기

경로에서 파일명의 확장자를 변경하려면 os.path.splitext() 함수를 사용하여 확장자를 분리하고, 새로운 확장자를 추가합니다.

import os

path = "/home/user/data/file.txt"
new_extension = ".csv"

base_path, ext = os.path.splitext(path)
new_path = base_path + new_extension
print(new_path)  # 출력 결과: /home/user/data/file.csv

5. 경로에서 파일명 추출하기

경로에서 파일명만 추출하려면 os.path.basename() 함수를 사용합니다.

import os

path = "/home/user/data/file.txt"
filename = os.path.basename(path)
print(filename)  # 출력 결과: file.txt

6. 경로에서 폴더명 추출하기

경로에서 폴더명만 추출하려면 os.path.dirname() 함수를 사용합니다.

import os

path = "/home/user/data/file.txt"
folder = os.path.dirname(path)
print(folder)  # 출력 결과: /home/user/data