这里将先容三种判断文件或文件夹是否存在的方法,分别利用os模块、Try语句、pathlib模块。

1.利用os模块

os模块中的os.path.exists()方法用于考验文件是否存在。

判断文件是否存在

import osos.path.exists(test_file.txt)#Trueos.path.exists(no_exist_file.txt)#False判断文件夹是否存在

import osos.path.exists(test_dir)#Trueos.path.exists(no_exist_dir)#False

可以看出用os.path.exists()方法,判断文件和文件夹是一样。

php判断文件夹Python中可以用三种办法断定文件是否存在 JavaScript

实在这种方法还是有个问题,假设你想检讨文件“test_data”是否存在,但是当前路径下有个叫“test_data”的文件夹,这样就可能涌现误判。
为了避免这样的情形,可以这样做:

只检讨文件

import osos.path.isfile("test-data")

通过这个方法,如果文件”test-data”不存在将返回False,反之返回True。

纵然文件存在,你可能还须要判断文件是否可进行读写操作。

判断文件是否可以做读写操作

利用os.access()方法判断文件是否可进行读写操作。

语法:

os.access(path, mode)

path为文件路径,mode为操作模式,有这么几种:

os.F_OK: 检讨文件是否存在;os.R_OK: 检讨文件是否可读;os.W_OK: 检讨文件是否可以写入;os.X_OK: 检讨文件是否可以实行

该方法通过判断文件路径是否存在和各种访问模式的权限返回True或者False。

import osif os.access("/file/path/foo.txt", os.F_OK): print ("Given file path is exist.")if os.access("/file/path/foo.txt", os.R_OK): print ("File is accessible to read")if os.access("/file/path/foo.txt", os.W_OK): print ("File is accessible to write")if os.access("/file/path/foo.txt", os.X_OK): print ("File is accessible to execute")2.利用Try语句

可以在程序中直策应用open()方法来检讨文件是否存在和可读写。

语法:

open()

如果你open的文件不存在,程序会抛出错误,利用try语句来捕获这个缺点。

程序无法访问文件,可能有很多缘故原由:

如果你open的文件不存在,将抛出一个FileNotFoundError的非常;文件存在,但是没有权限访问,会抛出一个PersmissionError的非常。

以是可以利用下面的代码来判断文件是否存在:

try: f =open() f.close()except FileNotFoundError: print ("File is not found.")except PermissionError: print ("You don't have permission to access this file.")

实在没有必要去这么细致的处理每个非常,上面的这两个非常都是IOError的子类。
以是可以将程序简化一下:

'''学习中碰着问题没人解答?

利用pathlib须要先利用文件路径来创建path工具。
此路径可以是文件名或目录路径。

检讨路径是否存在

path = pathlib.Path("path/file")path.exist()检讨路径是否是文件

path = pathlib.Path("path/file")path.is_file()

如果本文对你有帮助,别忘却给我个3连 ,点赞,转发,评论,,咱们下期见。

收藏 即是白嫖,点赞才是真情。

原文 https://www.cnblogs.com/python960410445/p/16427432.html