目录
- 前言
 - 一.检查文件夹/文件是否存在
 - 1. os.path.exists()
 - 2. os.path.isfile()和os.path.isdir()
 - 3. os.access()
 - 4. 异常判断
 - 5. lambda匿名函数(扩展)
 - 总结
 
前言
判断文件是否存在在实际应用中用的非常多,下面我们来归纳一下检查文件、文件夹是否存在的各种操作
一.检查文件夹/文件是否存在
1. os.path.exists()
文件夹,文件均可,文件无后缀时会和文件夹混淆
# 包括文件和文件夹,导入os.path
import os.path
ret_file = r'C:\Users\Administrator\Desktop\1.xlsx'
# 1  os.path加函数方法
def file_exists(ret_file):
    # 分不清是文件和文件夹
    res = os.path.exists(ret_file)
    return res
result = file_exists(ret_file)
print(result)
2. os.path.isfile()和os.path.isdir()
需要单独判断
import os.path
ret_file = r'C:\Users\Administrator\Desktop\1.xlsx'
#  分开做判断
def file_exists(ret_file):
    # 判断文件
    res1 = os.path.isfile(ret_file)
    # 判断文件夹
    res2 = os.path.isdir(ret_file)
    return (res1,res2)
result = file_exists(ret_file)
print(result)
3. os.access()
文件夹,文件均可,文件无后缀时会和文件夹混淆
import os
ret_file = r'C:\Users\Administrator\Desktop\1.xlsx'
def file_exists(ret_file):
    # # os.F_OK文件是否存在
    res = os.access(ret_file, os.F_OK)
    # # os.R_OK文件是否可读
    # res = os.access(ret_file, os.R_OK)
    # # os.W_OK文件是否可写
    # res = os.access(ret_file, os.W_OK)
    # os.X_OK文件是否可执行
    # res = os.access(ret_file, os.X_OK)
    return res
4. 异常判断
只能判断文件
#  直接读取文件,根据是否报错来判断文件是否存在(不能读取文件夹)
def file_exists(ret_file):
    try:
        # f = open(ret_file)
        # f.close()
        with open(ret_file) as f:
            pass
    except IOError:
        return False
    else:
        return True
5. lambda匿名函数(扩展)
import os.path import os #lambda 方法,这里只写一种os.path.exists()方式实现 file_exists = lambda file: os.path.exists(file)
总结
判断文件不存在后,按照惯例,下一步应该是新建文件、文件夹,然后再进行对文件、文件夹的操作
	声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
		
评论(0)