如果你要确定文件存在的话然后做些什么,那么使用try是最好不过的

如果您不打算立即打开文件,则可以使用os.path.isfile检查文件

如果path是现有常规文件,则返回true。对于相同的路径,islink()和isfile()都可以为true

import os.path
os.path.isfile(fname)

如果你需要确定它是一个文件。

从Python 3.4开始,该pathlib模块提供了一种面向对象的方法(pathlib2在Python 2.7中向后移植):

from pathlib import Path

my_file = Path("/path/to/file")
if my_file.is_file():
    # file exists

要检查目录,请执行以下操作:

if my_file.is_dir():
    # directory exists

要检查Path对象是否存在,不管它是文件还是目录,请使用exists():

if my_file.exists():
    # path exists

你也可以在一个try中使用resolve(strict=True):

try:
    my_abs_path = my_file.resolve(strict=True)
except FileNotFoundError:
    # doesn't exist
else:
    # exists

作者:熊猫烧香

链接:www.pythonheidong.com/blog/article/15/

来源:python黑洞网

最新文章

  1. Android线程管理之AsyncTask异步任务
  2. Maemo平台上如何使用Openvpn
  3. Asp.NET MVC 拍卖网站,拆解【2】 Asp.NET MVC章回,第(1)节
  4. Unity5中叹为观止的实时GI效果
  5. thinkphp中SQLSTATE[42S02]: Base table or view not found: 1146 Table错误解决方法
  6. SharePoint 2013的100个新功能之网站管理(二)
  7. 浅谈UE4引擎
  8. libevent: linux安装libevent
  9. SecureCRT学习之道:SecureCRT常用快捷键设置与字体设置方法
  10. Unity 5 Stats窗口
  11. 关于XML的小思考
  12. Nginx概述及安装配置
  13. ETL流程介绍及常用实现方法
  14. JSP验证码。
  15. 记一个神奇的WAS问题:sibuswsgw-sibuswsgw_console.jar invalid LOC header (bad signature) 分类: WebSphere 2015-08-06 23:21 9人阅读 评论(0) 收藏
  16. servlet/和/*匹配的区别
  17. oracle修改字符集方法
  18. Delphi处理TWebBrowser的Close事件
  19. 编写Android工程里测试代码的步骤
  20. springboot 注入 restTemplate

热门文章

  1. android px转换为dip/dp
  2. nginx+gunicorn+supervisor+flask @ centos
  3. String详解, String和CharSequence区别, StringBuilder和StringBuffer的区别 (String系列之1)
  4. work2
  5. svn 提交 commit慢
  6. SDUT 1570 C 旅行(DFS)
  7. Spark运行各个时间段的解释
  8. javaScript高程第三版读书笔记
  9. curl fake ip
  10. .NET中DLL“没有可放置在工具箱的组件”—FreeTextBox
  11. rollback的作用
  12. Win10下Mysql5.7.13,解压版安装流程
  13. ASP.NET Core 异常重试组件 Polly
  14. Hibernate (二)
  15. DB2 因版本问题 Reorg 出错 解决办法
  16. java学习-- String
  17. mysql主从配置和galera集群
  18. IntelliJ IDEA 2017版 spring-boot基础补充,原理详解
  19. springboot 文件上传 java.io.IOException: The temporary upload location [/tmp/xx] is not valid
  20. ALM在win7/IE8下无法浏览