如何使用python检查一个文件是普通文件还是目录?
yhqotfr81#
os.path.isdir()和os.path.isfile()应该可以给予您的需求。请参见:http://docs.python.org/library/os.path.html
os.path.isdir()
os.path.isfile()
qlckcl4x2#
正如其他答案所说,os.path.isdir()和os.path.isfile()是你想要的。然而,你需要记住,这不是唯一的两种情况。例如,使用os.path.islink()作为符号链接。此外,如果文件不存在,这些都返回False,所以你可能也想检查os.path.exists()。
os.path.islink()
False
os.path.exists()
polhcujo3#
Python 3.4在标准库中引入了pathlib模块,它提供了一种面向对象的方法来处理文件系统路径。相关的方法是.is_file()和.is_dir():
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也可以通过the pathlib2 module on PyPi.在Python 2.7上使用
mwg9r5ms4#
import os if os.path.isdir(d): print "dir" else: print "file"
x6yk4ghg5#
os.path.isdir('string') os.path.isfile('string')
bvk5enib6#
试试这个:
import os.path if os.path.isdir("path/to/your/file"): print "it's a directory" else: print "it's a file"
btqmn9zl7#
要检查是否*存在文件/目录 *:
os.path.exists(<path>)
检查是否*路径是目录 *:
os.path.isdir(<path>)
检查是否*路径是文件 *:
os.path.isfile(<path>)
7条答案
按热度按时间yhqotfr81#
os.path.isdir()
和os.path.isfile()
应该可以给予您的需求。请参见:http://docs.python.org/library/os.path.htmlqlckcl4x2#
正如其他答案所说,
os.path.isdir()
和os.path.isfile()
是你想要的。然而,你需要记住,这不是唯一的两种情况。例如,使用os.path.islink()
作为符号链接。此外,如果文件不存在,这些都返回False
,所以你可能也想检查os.path.exists()
。polhcujo3#
Python 3.4在标准库中引入了
pathlib
模块,它提供了一种面向对象的方法来处理文件系统路径。相关的方法是.is_file()
和.is_dir()
:Pathlib也可以通过the pathlib2 module on PyPi.在Python 2.7上使用
mwg9r5ms4#
x6yk4ghg5#
bvk5enib6#
试试这个:
btqmn9zl7#
要检查是否*存在文件/目录 *:
检查是否*路径是目录 *:
检查是否*路径是文件 *: