IT TIP

os.path.exists와 os.path.isdir의 장단점

itqueen 2020. 11. 4. 21:03
반응형

os.path.exists와 os.path.isdir의 장단점


나는 디렉토리가 존재하는지 확인하고있어,하지만 난 내가 사용주의 os.path.exists대신에 os.path.isdir. 둘 다 잘 작동하지만 .NET isdir대신 사용하는 이점이 무엇인지 궁금 exists합니다.


os.path.existsTrue해당 이름의 일반 파일이있는 경우 에도 반환 됩니다.

os.path.isdirTrue해당 경로가 존재하고 디렉토리 인 경우 에만 반환 됩니다.


마치 경로가 존재하지만 디렉토리가 아닌 파일이면 isdir을 반환 False합니다. 한편, 두 경우 모두 exists반환 True됩니다.


os.path.isdir () 은 경로가 존재하고 디렉토리인지 확인하고 케이스에 대해 TRUE를 반환합니다.

마찬가지로 os.path.isfile () 은 경로가 존재하고 파일인지 확인하고 케이스에 대해 TRUE를 반환합니다.

그리고 os.path.exists () 는 경로가 존재하는지 확인하고 경로가 파일이나 디렉토리를 가리키는 지 상관하지 않고 두 경우 모두 TRUE를 반환합니다.


대부분의 경우 동일합니다.

그러나 경로는 물리적으로 존재할 수 있지만 path.exists()False를 반환합니다. os.stat ()가이 파일에 대해 False를 반환하는 경우입니다.

경로가 물리적으로 존재 path.isdir()하면 항상 True를 반환합니다. 이것은 플랫폼에 의존하지 않습니다.


os.path.exists (path) 경로가 기존 경로를 참조하면 True를 반환합니다. 기존 경로는 일반 파일 ( http://en.wikipedia.org/wiki/Unix_file_types#Regular_file ) 일 수 있지만 특수 파일 (예 : 디렉토리) 일 수도 있습니다. 따라서 본질적으로이 함수는 제공된 경로가 파일 시스템에 어떤 형태로든 존재하는 경우 true를 반환합니다 (단선 된 심볼릭 링크와 같은 몇 가지 예외에도 불구하고).

os.path.isdir (path)는 경로가 디렉토리를 가리키는 경우에만 true를 반환합니다.

참고 URL : https://stackoverflow.com/questions/15077424/pros-and-cons-between-os-path-exists-vs-os-path-isdir

반응형