如何检查一个文件或者文件夹存在?有几种方法,Python2和Python3版本也有不同,这是在文件操作中常用到的方法,只有文件存在我们才可以继续对文件进行处理,下面总结了常用的检查文件是否存在的方法。
本代码在Python3.4+下通过, 其他版本略有差异
使用os库
不需要打开文件,直接使用os库方法检查
# @param Python3如何检查文件或文件夹是否存在?
# @author 编程之家 jb51.cc|www.512Pic.com
import os.path
filename='/jb51.cc/file.txt'
os.path.isfile(filename)
# End www.jb51.cc
检查文件是否存在,成功返回Ture, 失败返回False
注意:仅能检测文件, 而非文件夹
文件夹检查
os.path.exists即可以检查文件也可以检查文件夹
# @param Python3如何检查文件或文件夹是否存在?
# @author 编程之家 jb51.cc|www.512Pic.com
import os
a_path='/jb51.cc/'
if os.path.exists(a_path):
#do something
# End www.jb51.cc
文件权限检查
上面仅检查了文件是否存在,并没有检查是否可读或者可写, 可以使用os.access方法
# @param Python3如何检查文件或文件夹是否存在?
# @author 编程之家 jb51.cc|www.512Pic.com
import os
filename='/jb51.cc/file.txt'
if os.path.isfile(filename) and os.access(filename,os.R_OK):
#do something
# End www.jb51.cc
既检查了文件是否存在,又检查了文件是否可读
使用pathlib库
从Python3.4开始,python已经把pathlib加入了标准库,不需要自己安装,但Python2版本需要使用pip安装pathlib2
文件是否存在
# @param Python3如何检查文件或文件夹是否存在?
# @author 编程之家 jb51.cc|www.512Pic.com
from pathlib import Path
my_file = Path(/jb51.cc/file.txt)
if my_file.is_file():
# file exists
# End www.jb51.cc
文件夹是否存在
# @param Python3如何检查文件或文件夹是否存在?
# @author 编程之家 jb51.cc|www.512Pic.com
if my_file.is_dir():
# directory exists
# End www.jb51.cc
文件或文件夹是否存在
# @param Python3如何检查文件或文件夹是否存在?
# @author 编程之家 jb51.cc|www.512Pic.com
if my_file.exists():
# path exists
# End www.jb51.cc
上面就是检查文件或文件夹是否存在的方法,如有问题,欢迎留言
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。