source

FileNotFoundError: [Errno 2] 해당 파일 또는 디렉터리가 없습니다.

nicesource 2023. 8. 12. 10:26
반응형

FileNotFoundError: [Errno 2] 해당 파일 또는 디렉터리가 없습니다.

CSV 파일을 열려고 하는데 어떤 이유로 python이 찾을 수 없습니다.

여기 제 코드가 있습니다(단순한 코드일 뿐 문제를 해결할 수 없습니다).

import csv

with open('address.csv','r') as f:
    reader = csv.reader(f)
    for row in reader:
        print row

이름이 있는 파일을 열 때address.csv당신은 말하고 있습니다.open()파일이 현재 작업 디렉터리에 있는 함수입니다.이를 상대 경로라고 합니다.

이것이 의미하는 바를 이해하려면 코드에 다음을 추가합니다.

import os

cwd = os.getcwd()  # Get the current working directory (cwd)
files = os.listdir(cwd)  # Get all the files in that directory
print("Files in %r: %s" % (cwd, files))

그러면 현재 작업 디렉터리가 모든 파일과 함께 인쇄됩니다.

다른 방법으로 알 수 있습니다.open()파일이 위치하는 함수는 다음과 같은 절대 경로를 사용하는 것입니다.

f = open("/Users/foo/address.csv")

상대 경로를 사용하고 있습니다. 즉, 프로그램이 작업 디렉토리에서 파일을 찾습니다.작업 디렉토리에 해당 이름의 파일이 없음을 알리는 오류입니다.

정확하거나 절대적인 경로를 사용해 보십시오.

절대 경로를 통과했음에도 불구하고 오류가 발생하는 사용자의 경우 파일 이름이 유효한지 확인해야 합니다.저는 파일 이름에 '/'이(가) 있는 파일을 만들려고 했습니다.'/'을(를) 제거하자마자 파일을 만들 수 있었습니다.

with open(fpath, 'rb') as myfile:
    fstr = myfile.read()

파일이 비어 있기 때문에 이 오류가 발생합니다.이 대답은 이 질문에 대한 정답이 아닐 수도 있지만 여러분 중 일부에게 힌트를 줄 수 있기를 바랍니다.

"c:\script.py "에 다음을 포함하는 스크립트가 있다고 가정해 보겠습니다.

result = open("index.html","r")
print(result.read())

cmd(또는 셸)에서 스크립트를 실행할 때 index.html 파일도 같은 디렉토리 "c:\index.html"에 있다고 가정합니다.

C:\Users\Amine>python c:\script.py

오류가 발생합니다.

FileNotFoundError: [Errno 2] No such file or directory: 'index.html'

그리고 "index.html"이 "C:"인 작업 디렉토리에 없기 때문입니다.\Users\Amin>.". 따라서 작동하려면 작업 디렉토리를 변경해야 합니다.

C:\python script.py

'<html><head></head><body></body></html>'

이것이 절대 경로를 사용하는 것이 선호되는 이유입니다.

정확한 경로를 사용합니다.

import csv


with open('C:\\path\\address.csv', 'r') as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)

언급URL : https://stackoverflow.com/questions/22282760/filenotfounderror-errno-2-no-such-file-or-directory

반응형