[python] 파이썬을 사용하여 파일이 일반 파일인지 디렉토리인지 식별하는 방법

파이썬을 사용하여 파일이 일반 파일인지 디렉토리인지 어떻게 확인합니까?



답변

os.path.isdir()그리고 os.path.isfile()당신이 원하는 무엇을 제공해야합니다. 참조 :
http://docs.python.org/library/os.path.html


답변

마찬가지로 다른 답변했다, 한 os.path.isdir()os.path.isfile()당신이 원하는 무엇인가. 그러나이 두 가지 경우만이 아니라는 점을 명심해야합니다. os.path.islink()예를 들어 심볼릭 링크에 사용하십시오 . 또한 False파일이 존재하지 않으면 모두 반환 되므로 확인할 수도 os.path.exists()있습니다.


답변

Python 3.4는 파일 라이브러리 경로를 처리하기위한 객체 지향 접근 방식을 제공하는 표준 라이브러리에 모듈 을 도입 했습니다pathlib . 관련 방법은 다음 .is_file().is_dir()같습니다.

In [1]: from pathlib import Path

In [2]: p = Path('/usr')

In [3]: p.is_file()
Out[3]: False

In [4]: p.is_dir()
Out[4]: True

In [5]: q = p / 'bin' / 'vim'

In [6]: q.is_file()
Out[6]: True

In [7]: q.is_dir()
Out[7]: False

Pathlib는 PyPi 의 pathlib2 모듈을 통해 Python 2.7에서도 사용할 수 있습니다 .


답변

import os

if os.path.isdir(d):
    print "dir"
else:
    print "file"


답변

os.path.isdir('string')
os.path.isfile('string')


답변

이 시도:

import os.path
if os.path.isdir("path/to/your/file"):
    print "it's a directory"
else:
    print "it's a file"


답변

디렉토리 세트를 단계별로 진행하는 os.chdir경우 실패하면 오류 / 경고 를 시도하는 것이 좋습니다 .

import os,sys
for DirName in sys.argv[1:]:
    SaveDir = os.getcwd()
    try:
        os.chdir(DirName)
        print "Changed to "+DirName
        # Do some stuff here in the directory
        os.chdir(SaveDir)
    except:
        sys.stderr.write("%s: WARNING: Cannot change to %s\n" % (sys.argv[0],DirName))