Python의 os 모듈은 운영 체제와 상호 작용하고, 파일 시스템을 조작하는 다양한 기능을 제공합니다. 이 매뉴얼에서는 os 모듈의 주요 함수와 사용법에 대해 자세히 설명합니다.
기본 개요
os 모듈은 운영 체제의 기능을 파이썬 코드에서 사용할 수 있도록 해줍니다. 파일과 디렉토리의 생성, 삭제, 이동, 이름 변경과 같은 파일 시스템 작업을 수행할 수 있으며, 환경 변수 관리, 경로 조작, 프로세스 관리 등의 기능을 제공합니다.
import os
주요 기능 및 예제
파일 및 디렉토리 작업
os.listdir()
지정된 디렉토리 내의 파일과 디렉토리 목록을 반환합니다.
import os
# 현재 디렉토리의 모든 파일 및 디렉토리 목록 출력
items = os.listdir('.')
print(items)
os.mkdir()
새로운 디렉토리를 생성합니다.
import os
# 'new_directory'라는 디렉토리 생성
os.mkdir('new_directory')
os.makedirs()
필요한 모든 중간 디렉토리를 포함하여 디렉토리를 생성합니다.
import os
# 'parent/child/grandchild' 경로의 모든 디렉토리를 생성
os.makedirs('parent/child/grandchild')
os.remove()
파일을 삭제합니다.
import os
# 'sample.txt' 파일 삭제
os.remove('sample.txt')
os.rmdir()
비어 있는 디렉토리를 삭제합니다.
import os
# 'empty_directory' 디렉토리 삭제
os.rmdir('empty_directory')
os.rename()
파일 또는 디렉토리의 이름을 변경합니다.
import os
# 'old_name.txt' 파일을 'new_name.txt'로 이름 변경
os.rename('old_name.txt', 'new_name.txt')
os.path.exists()
지정된 경로가 존재하는지 여부를 확인합니다.
import os
# 'sample.txt' 파일이 존재하는지 확인
exists = os.path.exists('sample.txt')
print(exists)
경로 조작
os.path.join()
여러 경로를 결합하여 하나의 경로로 만듭니다.
import os
# 'parent'와 'child'를 결합하여 경로 생성
path = os.path.join('parent', 'child')
print(path)
os.path.split()
경로를 디렉토리와 파일 이름으로 분리합니다.
import os
# 'path/to/file.txt'를 디렉토리와 파일 이름으로 분리
dir_name, file_name = os.path.split('path/to/file.txt')
print(dir_name) # 출력: 'path/to'
print(file_name) # 출력: 'file.txt'
os.path.splitext()
파일 이름과 확장자를 분리합니다.
import os
# 'file.txt'를 파일 이름과 확장자로 분리
file_name, file_ext = os.path.splitext('file.txt')
print(file_name) # 출력: 'file'
print(file_ext) # 출력: '.txt'
os.path.abspath()
상대 경로를 절대 경로로 변환합니다.
import os
# 'relative/path'를 절대 경로로 변환
absolute_path = os.path.abspath('relative/path')
print(absolute_path)
os.path.dirname()
경로에서 디렉토리 부분만 반환합니다.
import os
# 'path/to/file.txt'에서 디렉토리 부분만 반환
dir_name = os.path.dirname('path/to/file.txt')
print(dir_name) # 출력: 'path/to'
os.path.basename()
경로에서 파일 이름 부분만 반환합니다.
import os
# 'path/to/file.txt'에서 파일 이름 부분만 반환
file_name = os.path.basename('path/to/file.txt')
print(file_name) # 출력: 'file.txt'
환경 변수
os.environ
현재 환경 변수에 대한 딕셔너리 객체를 반환합니다.
import os
# 모든 환경 변수 출력
for key, value in os.environ.items():
print(f'{key}: {value}')
os.getenv()
지정된 환경 변수의 값을 반환합니다.
import os
# 'HOME' 환경 변수의 값을 반환
home_dir = os.getenv('HOME')
print(home_dir)
os.putenv()
새로운 환경 변수를 설정합니다.
import os
# 새로운 환경 변수 설정
os.putenv('NEW_VAR', 'value')
# 확인
print(os.getenv('NEW_VAR'))
프로세스 관리
os.system()
명령을 하위 쉘에서 실행합니다.
import os
# 'ls' 명령 실행 (유닉스 계열 시스템)
os.system('ls')
os.getpid()
현재 프로세스 ID를 반환합니다.
import os
# 현재 프로세스 ID 반환
pid = os.getpid()
print(pid)
os.getcwd()
현재 작업 디렉토리를 반환합니다.
import os
# 현재 작업 디렉토리 반환
cwd = os.getcwd()
print(cwd)
os.chdir()
현재 작업 디렉토리를 변경합니다.
import os
# 현재 작업 디렉토리를 'new_directory'로 변경
os.chdir('new_directory')
# 확인
print(os.getcwd())
Python의 os 모듈은 운영 체제와 상호작용하고 파일 시스템을 관리하는 데 필수적인 도구입니다. 이 매뉴얼에서는 주요 함수와 그 사용법에 대해 자세히 설명하였습니다. 각 기능을 이해하고 적절히 활용하면 파이썬으로 다양한 시스템 작업을 효율적으로 수행할 수 있습니다.