PROGRESS
10 / 10
단원
넘파이(NumPy) 기초 13
데이터프레임 생성과 편집 9
데이터 탐색과 필터링 12
데이터 집계와 통계 13
데이터 시각화(matplotlib) 10
파일 입출력(CSV, Excel, JSON) 10
전체 목록
파일 존재 확인 후 읽기 : os.path.exists()
30 P
QUESTION 10 #390
파일이 존재하는지 먼저 확인한 후 안전하게 읽는 프로그램입니다. 빈칸을 채우세요.
main.py
import pandas as pd
import os
# 테스트용 CSV 생성
df_save = pd.DataFrame({'이름': ['민수'], '점수': [100]})
df_save.to_csv('/tmp/test_data.csv', index=False)
file_path = '/tmp/test_data.csv'
# 파일이 존재하는지 확인 후 읽기
if os.path.(file_path):
df = pd.read_csv(file_path)
print("파일 읽기 성공!")
print(df)
else:
print("파일이 존재하지 않습니다.")
HINT
힌트: 파일이나 폴더가 "존재하다(exist)"라는 뜻의 영어 단어 exists()를 사용합니다.
실행 결과 예시
파일 읽기 성공! 이름 점수 0 민수 100
INTERACTIVE SHELL
Shift + Enter 로 즉시 실행
안전한 파일 읽기
파일이 없는 경로에서 read_csv()를 실행하면 오류가 발생합니다. os.path.exists()로 먼저 확인하면 안전합니다.
기본 문법
import os
if os.path.exists("파일경로"):
# 파일이 있을 때 실행
else:
# 파일이 없을 때 실행
확인 없이 읽으면?
# ❌ 파일이 없으면 오류 발생!
df = pd.read_csv("없는파일.csv")
# FileNotFoundError: [Errno 2] No such file or directory
# ✅ 먼저 확인 후 읽기
if os.path.exists("없는파일.csv"):
df = pd.read_csv("없는파일.csv")
else:
print("파일이 없습니다.")
os.path 모듈의 유용한 함수들
| 함수 | 설명 | 예시 결과 |
|---|---|---|
exists(path) |
파일/폴더 존재 여부 | True / False |
isfile(path) |
파일인지 확인 | True / False |
isdir(path) |
폴더인지 확인 | True / False |
getsize(path) |
파일 크기 (바이트) | 1024 |
basename(path) |
파일 이름만 추출 | 'data.csv' |
splitext(path) |
확장자 분리 | ('data', '.csv') |
try-except 방식도 가능
try:
df = pd.read_csv("data.csv")
print("파일 읽기 성공!")
except FileNotFoundError:
print("파일이 존재하지 않습니다.")
확인 → 읽기 → 분석 패턴
import os
import pandas as pd
file_path = "sales_2026.csv"
if os.path.exists(file_path):
df = pd.read_csv(file_path)
print(f"데이터 크기: {df.shape}")
print(f"열 목록: {list(df.columns)}")
print(df.head())
else:
print(f"{file_path} 파일을 찾을 수 없습니다.")
💡 핵심: 파일을 읽기 전에
os.path.exists()로 존재 여부를 확인하면 오류를 방지할 수 있습니다.