Python合集之目录操作(三)
1.判断目录是否存在
在Python中,有时需要判断给定的目录是否存在,这时可以使用os.path模块提供的exists()函数实现。
os.path.exists(path)
其中,path为要判断的目录,可以是绝对路径,也可以采用相对路径。如果给定的路径存在,则返回true,否则返回false。
import os print(os.path.exists('C:\\demo'))
注:os.path.exists()函数除了可以判断目录是否存在,还可以判断文件是否存在。
2.创建目录
在Python中,os模块提供了两个创建目录的函数,一个用于创建一级目录,另一个用于创建多级目录。
2.1 创建一级目录
创建一级目录是指只能创建一级目录,在Python中,可以使用os模块提供的mkdir()函数实现。通过该函数只能创建指定路径中的最后一级目录,如果该目录的上一级不存在,则抛出FileNotFoundError异常。
os.mkdir(path,mode=0o777)
参数说明:
path:用于指定要创建的目录,可以使用绝对路径,也可以使用相对路径。
mode:用于指定数值模式,默认值为0777,该参数在非UNIX系统上无效或被忽略。
import os os.mkdir("c:\\demo")
注:如果在创建路径时已经存在,将抛出FileExistsError异常。为了避免在创建目录时,因为存在抛出异常,可以在创建目录前,先判断指定的目录是否存在,只有当目录不存在时才创建。
import os path="C:\\demo" if not os.path.exists(path): os.mkdir(path) print("创建目录成功") else: print("目录已经存在")
注:如果指定的目录有多级,而且最后一级的上级目录中有不存在的,则抛出FileNotFoundError异常,并且目录创建不成功。要解决该问题有两种方法,一种是使用创建多级目录的方法,一种是编写递归函数调用。如下代码:
import os def mkdir(path): if not os.path.isdir(path): mkdir(os.path.split(path)[0]) else: return os.mkdir(path) mkdir("D:\\mr\\test\\demo")
2.2 创建多级目录
使用 mkdir()函数只能创建一级目录,如果想要创建多级目录,可以使用OS模块提供的makedirs()函数,该函数用于采用递归的方式创建目录。
os.makedirs(name,mode=0o777)
参数说明:
name:用于指定要创建的目录,可以使用绝对路径或者相对路径。
mode:用于指定数值模式,默认值为0777,该参数在非UNIX系统上无效或被忽略。
import os os.makedirs("C:\\demo\\test\\dir\\mr")
花絮:
本期的Python文件目录的处理就分享到这里,下期我们将继续分享Python文件目录的相关知识,感兴趣的朋友可以关注我。
同时也可以关注下我的个人 微信订阅号,园子里面的文章也会第一时间在订阅号里面进行推送跟更新。