os.path中的一些常规操作
在python中有个os模块,里面常常用到的是对文件的操作,下面我将常规介绍os.path模块中的如下函数,join、exists、mkdir、listdir。
在此之前请导入os模块
import os
join方法
将两个文件夹名组合为一个目录
dirPath=os.path.join(‘ab’,‘cd’);
输出为’ab\\cd’
这里的‘ab’推荐是文件的绝对路径,‘cd’就是文件绝对路径下的一个子文件,从而构成dirPath这么一个目录。
exists方法
判断文件夹内是否存在某一文件或文件夹
c=os.path.exists(‘test’)
True
另外也可以判断文件夹中的文件夹,如
os.path.exists(‘test\1’)
False
一般和mkdir配合使用,如是否存在,不存在就创建该文件夹。
mkdir方法
创建文件夹
os.mkdir(‘test1’) #就直接在相对路径下创建了文件夹
os.mkdir(‘D:\\Python36\\test1’) #就直接在绝对路径下创建了文件夹
但是要注意
无法创建组合文件夹,如
os.mkdir(‘D:\\Python36\\test2\\1’)
Traceback (most recent call last):
File “<pyshell#23>”, line 1, in
os.mkdir(‘D:\Python36\test1\1’)
FileNotFoundError: [WinError 3] 系统找不到指定的路径。: ‘D:\Python36\test2\1’
因为test2文件夹并不存在,必须在确保有test2文件夹后,才可以使用
listdir方法
直接查询文件夹内的所有文件及文件夹,返回一个list列表,记录着其名称
os.listdir(‘D:\\Python36\\test’)
[‘123_人脸标注_201906281122052_93.txt’, ‘face_data.txt’, ‘image’, ‘test.py’]
os.listdir(‘D:\\Python36\\test\\’)
[‘123_人脸标注_201906281122052_93.txt’, ‘face_data.txt’, ‘image’, ‘test.py’]
以上两种方法都可以。那么就可以结合这些函数完成对文件的查询与创建
import os
if not os.path.exists('test'):
os.mkdir('test')
if 'test1' not in os.listdir('test'):#也是判断存不存在,同于os.path.exists方法
os.mkdir('test\\test1')#必须存在test文件夹
os.chdir('D:\\Python36\\test\\test1')#改变对目录的操作位置,同时也改变了os.path为curdir
os.mkdir('test2')#在test1文件夹下添加test2文件夹