os模块是python标准库中的一个用于访问操作系统功能的模块。
系统操作
1 os.sep——获取路径分隔符
在Windows上,文件的路径分隔符是'\',在Linux上是'/'。例如:文件夹img下有一张图lake.jpg,
windows的路径:img\lake.jpg
Linux的路径:img/lake.jpg
为了让代码在不同的平台上都能运行,则需要用到os.sep,dir = os.sep.join(['img', 'lake.jpg'])
2 os.name——判断当前的工作平台,Windows 返回 ‘nt‘;Linux 返回’posix‘
目录操作
1 os.getcwd()——得到当前工作的目录
2 os.listdir()——指定目录下所有的文件和目录名,例如:
print(os.listdir('/Users/wangpeng/Desktop/img'))
#['dogs', 'cats', '.DS_Store', 'lake.png']
3 os.mkdir()——创建目录
os.mkdir('/Users/wangpeng/Desktop/img/lions')
4 os.makedirs()——可以一次创建多层目录
os.makedirs('/Users/wangpeng/Desktop/img/lions/lion/picture')
5 os.rmdir()——删除一个空目录。若目录里有文件则无法删除。
os.rmdir('/Users/wangpeng/Desktop/img/lions/lion/picture')
6 os.removedirs()——可以删除多层空目录。若目录里有文件则无法删除。
7 os.remove()——删除文件
os.remove('/Users/wangpeng/Desktop/img/lake.jpg')
8 os.rename()——重命名目录或文件
os.rename('/Users/wangpeng/Desktop/img/lions', '/Users/wangpeng/Desktop/img/tigers')
9 os.chdir()——改变目录到指定目录
os.chdir('/Users/wangpeng/Desktop/img') #当前工作目录转到'/Users/wangpeng/Desktop/img'
os.path模块
1 os.path.isfile()——判断是否为文件,是返回True,否则False
os.path.isfile('/Users/wangpeng/Desktop/img/lake.png') #True
2 os.path.isdir()——判断是否为目录,是返回True,否则False
os.path.isdir('/Users/wangpeng/Desktop/img/dogs') #True
3 os.path.exists()——检验指定的对象是否存在。是True,否则False
os.path.exists('/Users/wangpeng/Desktop/img') #True
4 os.path.split()——返回文件路径和文件名,返回的形式是元组
os.path.split('/Users/wangpeng/Desktop/img') #('/Users/wangpeng/Desktop', 'img')
5 os.path.dirname(path)——返回文件路径
os.path.dirname('/Users/wangpeng/Desktop/img/lake.png') #'/Users/wangpeng/Desktop/img'
6. os.path.basename(path)——返回文件名
os.path.basename('/Users/wangpeng/Desktop/img/lake.png') #lake.png
7 os.path.join(path, name)——连接目录(路径)和文件名
os.path.join('/Users/wangpeng/Desktop/img', 'lake.png') #'/Users/wangpeng/Desktop/img/lake.png'
8 os.path.abspath()——获取绝对路径
os.path.abspath('./') #'/Users/wangpeng/Desktop/img',即当前工作目录
9 os.path.getsize()——获取文件或文件夹的大小,文件夹大小是指文件夹这个数据结构在文件系统中占用的大小
os.path.getsize('/Users/wangpeng/Desktop/img') #224
os.path.getsize('/Users/wangpeng/Desktop/img/lake.png') #222062
参考资料