Python判断文件是否存在

  判断文件是否存在主要有两种方法:

import os
os.path.exists('xxx/xxx/filename') # True/False

  以上方法中入参的路径可以是文件路径也可以是文件夹路径,所以可以用于判断文件以及文件夹是否存在。
但是有一种特殊的情况是可能入参传的是一个文件夹路径,但是文件夹路径的上一层有个相同的文件,例如/usr/local/testfile这是一个文件夹,但是/usr/local路径下有一个文件就刚好叫做testfile,所以这样会产生混乱,所以建议如果是要判断文件是否存在,直接用:os.path.isfile('/xxx/xxx/filename'),而判断文件夹是否存在时则用:os.path.exists(xxx)这个方法。
  以上只是用os模块实现的,还可以用pathlib模块来实现文件判断,示例代码如下:

import pathlib
path = pathlib.Path('/usr/local/file')
path.exist()  # True/False  判断路径是否存在
path.is_file  # 判断对应路径是否是文件

  以上注释可知如果path路径存在且不是文件,那么很显然就只能是对应文件夹了。

拓展: 判断文件读写属性
这里来判断文件读写属性用到的就是os模块里的access方法,格式为:

os.access(path,mode)

path为文件路径,mode为需要判断的属性,主要分为以下四种:

  • os.F_OK: 判断文件是否存在
  • os.R_OK: 判断文件是否可读
  • os.W_OK: 判断文件是否可以写入
  • os.X_OK: 判断文件是否有执行权限

具体语法示例如下:

import os 
if not os.access('/usr/local/script/run.sh',os.X_OK):
    print "file has no permission to execute!"
  • 12
    点赞
  • 76
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值