Python 中 几种检查目录 是否存在的方法?

Python 检查目录是否为空

os.path.isdir 仅用于目录:

>>> import os
>>> os.path.isdir('new_folder')
TrueCode language: JavaScript (javascript)

os.path.exists 可用于文件和目录:

>>> import os
>>> os.path.exists(os.path.join(os.getcwd(), 'new_folder', 'file.txt'))
FalseCode language: JavaScript (javascript)

使用pathlib:

Python 3.4将该pathlib模块引入标准库,它提供了一种面向对象的方法来处理文件系统路径。Path对象的is_dir()exists()方法可以用来判断目录是否为空:

In [1]: from pathlib import Path

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

In [3]: p.exists()
Out[3]: True

In [4]: p.is_dir()
Out[4]: TrueCode language: JavaScript (javascript)

路径(和字符串)可以用/运算符连接在一起:

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

In [6]: q
Out[6]: PosixPath('/usr/bin/vim') 

In [7]: q.exists()
Out[7]: True

In [8]: q.is_dir()
Out[8]: FalseCode language: PHP (php)

注意 Pathlib 也可以通过PyPi 上的 pathlib2 模块在 Python 2.7 上使用。

发表评论