728x90

이 강의는 파이썬 강의 58강입니다.
이전 강의에서는 datetime으로 시간 다루기를 배웠습니다.
이번 강의에서는 프로그램이 내 컴퓨터의 파일과 폴더를 직접 다루는 방법,
즉 os 모듈을 배웁니다.
자동화가 “진짜 쓸모 있어지는” 지점입니다.
os 모듈은 무엇을 해주나
os 모듈은
운영체제(Operating System)와 상호작용하게 해줍니다.
- 현재 폴더 확인
- 파일 목록 가져오기
- 폴더 생성/삭제
- 경로 다루기
파일 정리 자동화의 핵심입니다.
1️⃣ os 모듈 불러오기
사용법은 아주 간단합니다.
import os
2️⃣ 현재 작업 폴더 확인하기
프로그램이
어디에서 실행되고 있는지 확인합니다.
import os
print(os.getcwd())
파일을 상대 경로로 다룰 때
아주 중요합니다.
3️⃣ 폴더 안 파일 목록 보기
현재 폴더의
파일/폴더 목록을 가져옵니다.
files = os.listdir()
print(files)
특정 폴더를 지정할 수도 있습니다.
print(os.listdir("data"))
4️⃣ 폴더 만들기
폴더가 없으면
자동으로 만들 수 있습니다.
os.mkdir("new_folder")
이미 있으면 에러가 납니다.
그래서 보통 이렇게 씁니다.
if not os.path.exists("new_folder"):
os.mkdir("new_folder")
5️⃣ 경로 존재 여부 확인하기
파일이나 폴더가
존재하는지 확인합니다.
print(os.path.exists("data.txt"))
print(os.path.exists("data"))
자동화에서 필수 패턴입니다.
6️⃣ 파일인지 폴더인지 구분하기
목록을 돌면서
파일과 폴더를 구분할 수 있습니다.
for name in os.listdir():
if os.path.isfile(name):
print("파일:", name)
elif os.path.isdir(name):
print("폴더:", name)
7️⃣ 경로 합치기 (os.path.join)
경로를 문자열로 직접 이어붙이면
오류가 나기 쉽습니다.
path = os.path.join("data", "test.txt")
print(path)
운영체제에 맞게
자동 처리됩니다.
8️⃣ 실습 예제
아래 작업을 직접 해보세요.
- 현재 폴더의 파일 목록 출력
- backup 폴더가 없으면 생성
- 파일과 폴더를 구분해서 출력
더보기
import os
if not os.path.exists("backup"):
os.mkdir("backup")
for name in os.listdir():
if os.path.isfile(name):
print("파일:", name)
elif os.path.isdir(name):
print("폴더:", name)
이번 강의 핵심 정리
- os 모듈은 운영체제와 상호작용한다
- getcwd(), listdir()는 기본 중 기본
- exists(), isfile(), isdir()는 자동화 필수
- join()으로 경로를 안전하게 만든다
728x90
'⚙️ Python > 💻 Python 기초' 카테고리의 다른 글
| [Python] 60강 파이썬 프로그램 구조화 정리 (0) | 2026.01.20 |
|---|---|
| [Python] 59강 sys 모듈과 실행 인자 (프로그램을 명령어처럼) (0) | 2026.01.19 |
| [Python] 57강 datetime으로 시간 다루기 (0) | 2026.01.18 |
| [Python] 56강 표준 라이브러리 활용법 (이미 있는 도구를 쓰는 습관) (0) | 2026.01.18 |
| [Python] 55강 모듈과 import 개념 (코드를 파일로 나누기) (0) | 2026.01.17 |