후레임의 프로그래밍
파일이 예외없이 존재하는지 어떻게 확인합니까? 본문
질문
<코드를 사용하지 않고 파일의 존재 여부를 어떻게 확인합니까? >try문?
답변
확인하는 이유가 if file_exists : open_it ()
와 같은 작업을 수행 할 수 있기 때문이라면 파일을 열려고 할 때 try
를 사용하는 것이 더 안전합니다. . 확인한 다음 열면 파일이 삭제되거나 이동 될 위험이 있습니다. 확인한 시점과 열려고하는 시점 사이에 어떤 위험이 있습니다.
파일을 즉시 열 계획이 아니라면 os.path.isfile
경로가 기존 일반 파일이면
True
를 반환합니다. 이것은 심볼릭 링크를 따르므로 islink ()및 isfile ()은 동일한 경로에 대해 true 일 수 있습니다.
import os.path
os.path.isfile(fname)
파일인지 확인해야하는 경우
Python 3.4부터 pathlib
모듈은 객체 지향 접근 방식을 제공합니다 (Python 2.7에서 pathlib2
로 백 포트 됨) :
from pathlib import Path
my_file = Path("/path/to/file")
if my_file.is_file():
# file exists
디렉토리를 확인하려면 다음을 수행하십시오.
if my_file.is_dir():
# directory exists
Path
객체가 파일인지 디렉토리인지 독립적으로 존재하는지 확인하려면 exists ()
를 사용하세요.
if my_file.exists():
# path exists
try
블록에서 resolve (strict = True)
를 사용할 수도 있습니다.
try:
my_abs_path = my_file.resolve(strict=True)
except FileNotFoundError:
# doesn't exist
else:
# exists
출처 : https://stackoverflow.com/questions/82831
'스택오버플로우(Stack Overflow)' 카테고리의 다른 글
비동기 호출에서 응답을 어떻게 반환합니까? (0) | 2020.10.26 |
---|---|
추적되었지만 현재 .gitignore에 있는 파일을 Git이 "잊게"만드는 방법은 무엇입니까? (0) | 2020.10.26 |
파이썬의 메타 클래스는 무엇입니까? (0) | 2020.10.26 |
"px", "dip", "dp"및 "sp"의 차이점은 무엇입니까? (0) | 2020.10.26 |
파이썬에 삼항 조건 연산자가 있습니까? (0) | 2020.10.26 |