본문 바로가기
파이썬 코딩 기록

파이썬 no such file or directory 해결 방법 (복붙하면 바로 해결)

by 파이썬코딩대학 2024. 12. 25.

파이썬에서 'No Such File or Directory' 오류 해결하기

구글에 "파이썬 파일 입출력 오류"라고 검색하면 수많은 해결책이 나오지만, 정작 핵심을 찌르는 답변은 찾기 어렵다. 그래서 내가 직접 경험한 내용을 토대로 이 오류를 어떻게 해결했는지 공유하려고 한다.

왜 이런 오류가 발생하는가?

먼저, 'No Such File or Directory'라는 오류는 말 그대로 해당 파일이나 디렉토리가 없을 때 발생한다. 하지만 분명히 파일이 존재하는데도 불구하고 이런 오류를 만나면 당황스럽기 마련이다.

내가 이 문제를 처음 겪은 때는 파이썬으로 간단한 스크립트를 작성하고 있었을 때였다. 파일을 열어서 내용을 읽으려고 했는데, 계속해서 오류가 발생했다.

해결 방법 1: 파일 경로 확인

가장 먼저 해야 할 일은 파일 경로를 정확히 확인하는 것이다. 파이썬 스크립트와 파일이 같은 디렉토리에 있는지, 아니면 절대 경로를 사용해야 하는지 체크해보자.

# 상대 경로 사용
with open('data.txt', 'r') as file:
    content = file.read()

# 절대 경로 사용
with open('/Users/username/projects/data.txt', 'r') as file:
    content = file.read()

나는 파일이 같은 디렉토리에 있다고 생각하고 상대 경로를 사용했는데, 실제로는 다른 위치에 있어서 오류가 났다. 파일 탐색기를 통해 정확한 위치를 확인하고 경로를 수정하니 문제가 해결되었다.

해결 방법 2: 경로에 특수 문자나 공백 확인

파일 경로에 공백이나 특수 문자가 있으면 인식하지 못할 수 있다. 특히 윈도우에서는 이런 문제가 자주 발생한다.

# 잘못된 예시
with open('C:\My Documents\data.txt', 'r') as file:
    content = file.read()

# 올바른 예시
with open('C:\\My Documents\\data.txt', 'r') as file:
    content = file.read()

처음에 역슬래시 하나로 경로를 지정했다가 오류가 났다. 역슬래시를 두 번 쓰거나, 슬래시를 사용해야 한다는 것을 깨닫고 수정했다.

해결 방법 3: 작업 디렉토리 확인

스크립트를 실행하는 곳과 파일이 있는 곳이 다르면 문제가 발생할 수 있다. 특히 IDE나 터미널에서 실행할 때 현재 작업 디렉토리를 확인해야 한다.

import os

print(os.getcwd())

위 코드를 통해 현재 작업 디렉토리를 출력해보니 예상과 다른 위치였다. 그래서 os.chdir() 함수를 사용해서 디렉토리를 변경했다.

os.chdir('/Users/username/projects')

해결 방법 4: 파일 이름 오타 확인

가장 간단하지만 놓치기 쉬운 부분이다. 파일 이름에 오타가 없는지, 확장자가 정확한지 다시 한 번 확인해보자.

나는 data.txt 대신에 date.txt로 입력해서 한참을 헤맸다. 파일 이름을 복사해서 붙여넣으니 문제가 해결되었다.

마무리하며

사실 이런 오류는 초반에 많이 겪게 되지만, 익숙해지면 자연스럽게 피할 수 있게 된다. 중요한 것은 오류가 발생했을 때 당황하지 말고 차근차근 문제의 원인을 찾아가는 것이다.

파이썬을 사용하면서 수많은 오류를 만나겠지만, 그만큼 성장의 발판이 될 것이다. 여러분도 오류를 극복하고 더 나은 개발자가 되길 바란다.