보통 파일을 읽고 쓰기 전에 파일이나 디렉터리가 존재하는지 확인해야 합니다. 그렇지 않으면 특정 처리 방법으로 인해 프로그램 오류가 발생할 수 있습니다. 따라서 작업을 수행하기 전에 파일이 존재하는지 확인하는 것이 가장 좋습니다.
여기서는 각각 os 모듈, Try 문, pathlib 모듈을 사용하여 파일이나 폴더가 있는지 확인하는 세 가지 방법을 소개합니다.
1. os 모듈을 사용하세요
os 모듈의 os.path.exists() 메서드를 사용하여 파일이 존재하는지 확인합니다.
파일 존재 여부 확인
import os os.path.exists(test_file.txt) #True os.path.exists(no_exist_file.txt) #False
폴더 존재 여부 확인
import os os.path.exists(test_dir) #True os.path.exists(no_exist_dir) #False
파일과 폴더가 동일한지 확인하기 위해 os.path.exists() 메서드를 사용하는 것을 볼 수 있습니다.
사실 이 방법에는 여전히 문제가 있습니다. "test_data" 파일이 존재하는지 확인하고 싶은데, 현재 경로 아래에 "test_data"라는 폴더가 있어서 오판이 발생할 수 있습니다. 이러한 상황을 피하기 위해 다음과 같이 할 수 있습니다:
파일만 확인하세요
import os os.path.isfile("test-data")
이 방법을 사용하면 "test-data" 파일이 없으면 False를 반환하고 그렇지 않으면 True를 반환합니다.
파일이 존재하더라도 파일을 읽고 쓸 수 있는지 여부를 확인해야 할 수도 있습니다.
맨 위로
파일을 읽고 쓸 수 있는지 확인하세요.
파일을 읽고 쓸 수 있는지 확인하려면 os.access() 메서드를 사용하세요.
구문:
os.access(path, mode)
path는 파일 경로이고, mode는 작동 모드이며, 여러 유형이 있습니다.
os.F_OK: 파일이 존재하는지 확인합니다.
os.R_OK: 파일을 읽을 수 있는지 확인합니다.
os.W_OK : 파일 쓰기 가능 여부 확인 os.X_OK : 파일 실행 가능 여부 확인 이 메서드는 파일 경로 존재 여부와 다양한 접근 모드의 권한을 판단하여 True 또는 False를 반환합니다.import os if os.access("/file/path/foo.txt", os.F_OK): print "Given file path is exist." if os.access("/file/path/foo.txt", os.R_OK): print "File is accessible to read" if os.access("/file/path/foo.txt", os.W_OK): print "File is accessible to write" if os.access("/file/path/foo.txt", os.X_OK): print "File is accessible to execute"
try: f =open() f.close() except FileNotFoundError: print "File is not found." except PersmissionError: print "You don't have permission to access this file."
try: f =open() f.close() except IOError: print "File is not accessible."
path = pathlib.Path("path/file") path.exist()
path = pathlib.Path("path/file") path.is_file()
위 내용은 Python을 사용하여 파일이 존재하는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!