Python 判断文件/目录是否存在

使用 os 模块

  • 判断文件是否存在

    os.path.isfile(path)
    
  • 判断目录是否存在

    os.path.isdir(path)
    
  • 判断路径是否存在

    # 使用 path 模块
    os.path.exists(path)
    
    # 使用 access() 方法
    os.access(path, os.F_OK)
    

使用 open 函数和异常捕获

如果直接用 open() 函数打开一个不存在的文件时,程序会抛出异常,我们可以通过 try 语句来捕获异常以达到判断文件是否存在的目的。

如果文件不存在,open() 函数会抛出 FileNotFoundError 异常。如果文件无操作权限,则会抛出 PersmissionError 异常。

1
2
3
4
5
6
7
8
9
10
11
12
13
filePath = '/path/to/file'
 
try:
    file = open(filePath)
    file.close()
except FileNotFoundError:
    print("No such file or directory: '%s'" % filePath)
except IsADirectoryError:
    print("Is a directory: '%s'" % filePath)
except PermissionError:
    print("Permission denied: '%s'" % filePath)
else:
    print("File is exist: '%s'" % filePath)

使用 pathlib 模块

1
2
3
4
5
6
7
8
9
10
11
12
import pathlib
 
path = pathlib.Path('path/to/file')
 
# 判断路径是否存在
path.exists()
 
# 判断是否为文件
path.is_file()
 
# 判断是否为目录
path.is_dir()

 

 
posted @   锐洋智能  阅读(682)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 分享4款.NET开源、免费、实用的商城系统
· 解决跨域问题的这6种方案,真香!
· 5. Nginx 负载均衡配置案例(附有详细截图说明++)
· Windows 提权-UAC 绕过
历史上的今天:
2019-12-02 mysql中delete和truncate区别
2019-12-02 Java排序算法总结
2015-12-02 第三方包jintellitype实现Java设置全局热键
2015-12-02 System.loadLibrary()的使用方法汇总
2015-12-02 java swing MenuItem乱码处理
点击右上角即可分享
微信分享提示