【Python那些事儿】判断文件/文件夹是否存在的方法
通常在读写文件/文件夹之前要判断其是否存在,不然程序可能会出错。所以,在做任何操作之前,最好先判断文件/文件夹是否存在。
判断方法:
os模块try语句pathlib模块
os模块
os.path.exists(path):判断文件/文件夹是否存在os.path.isdir(path):判断文件夹是否存在os.path.isfile(path):判断文件是否存在os.access(path, mode):判断文件是否可做读写操作。mode为操作模式:
os.F_OK:检查文件是否存在os.R_OK:检查文件是否可读os.W_OK:检查文件是否可写os.R_OK:检查文件是否可执行
try语句
可以在程序中直接使用open()方法来检查文件是否存在和可读写。如果open的文件不存在,程序会抛出错误,使用try语句来捕获这个错误。程序无法访问文件,可能有很多原因:
- open的文件不存在,将抛出一个FileNotFoundError的异常;
- open的文件存在,但没有访问权限,会抛出一个PersmissionError的异常。
例如:
try:
with open("/home/spark/scale.py") as file_o:
for line in file_o:
print line
except IOError:#FileNotFoundError异常和PersmissionError异常都是IOError的子类
print "File is not accessible or not found!"
使用try语句进行判断,处理所有异常非常简单和优雅,而且相比其他不需要引入外部模块。
pathlib模块
pathlib模块在Python3中是內建模块,但在Python2中需要单独安装。使用pathlib需要先使用文件路径来创建path对象,此路径可以是文件名或目录路径。
- 检查路径是否存在:
path = pathlib.Path("path/file")
path.exists()
- 检查路径是否是文件:
path = pathlib.Path("path/file")
path.is_file()
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
