python 剖断文件是不是存在

在专业中蒙受了索要看清文件是不是留存的供给,所以顺便整理一下python判定文件是还是不是留存的秘诀。在操作文件前,检查文件是或不是存在也是一个精美的编制程序习贯。平时来讲,有二种常见情势来判断文件夹或文件是还是不是存在,分别是os模块,try语句和pathlib模块。

 

os模块

os模块中的os.path.exists(path)能够检查测验文件或文件夹是不是存在,path为文件/文件夹的名字/相对路线。再次来到结果为True/False

 

print os.path.exists("/untitled/chapter3.py")
print os.path.exists("chapter3.py")

 

这种用法不只能检查实验文件也能检测文件夹,这也拉动难点,要是本人想找一个命名称叫helloworld的文书,使用exists大概命中同名的helloworld文件夹。这时使用os.path.isdir()和os.path.isfile()能够加以分歧。假使进一步想看清是或不是足以操作文件,能够使用os.access(path,
model),model为操作方式,具体如下

if __name__ == '__main__':
    if os.access("/untitled/chapter3.py", os.F_OK):
        print "File path is exist."

    if os.access("/untitled/chapter3.py", os.R_OK):
        print "File is accessible to read"

    if os.access("/untitled/chapter3.py", os.W_OK):
        print "File is accessible to write"

    if os.access("/untitled/chapter3.py", os.X_OK):
        print "File is accessible to execute"

 

try语句

对文件最简便易行的操作方法是直接利用open()方法,不过文件不设有,或产生权限难点时open方法会报错,所以同盟try语句使用来捕捉一丰富。try…open语法轻巧优雅,可读性强,何况无需引进任何模块

if __name__ == '__main__':
    try:
        f = open("/untitled/chapter3.py")
        f.close()
    except IOError:
        print "File is not accessible."

 

pathlib模块

在python第22中学pathlib属于第三方模块,须求单独安装。可是python3中pathlib已经是内建立模型块了

pathlib用法简单,与open类似。首先选择pathlib创造对象,进而使用exists(),is_file()等方法

if __name__ == '__main__':
    path = pathlib.Path("chapter3.py")
    print path.exists()
    print path.is_file()

 

相关文章