os模块封装了常见的文件和目录操作
导入模块
import os
常用方法
os.rename(path,new_path_name)
os.getcwd(path):返回当前工作目录;
print(os.getcwd()) # C:\Users\ThinkStation\Desktop
os.listdir(path=“.”):返回文件夹下所有文件名
path = 'C:/Users/ThinkStation/Desktop/test'
print(os.listdir(path)) # ['test_data.xlsx', '文件', '海报', '苹果']
os.path.exists(path):检查文件或文件夹是否存在
os.mkdir(path):创建文件夹
print(os.path.exists(path))#True
path_new='C:/Users/ThinkStation/Desktop/test_new'
if os.path.exists(path_new):
os.mkdir(path_new)
os.remove(path):删除一个文件
os.rmdir(path):删除一个文件夹
os.replace(src, dst):重命名或替换文件
os.walk(path):遍历获取所有下级文件和文件的文件名
for i in os.walk(path):
print(i)
'''
('C:/Users/ThinkStation/Desktop/test', ['文件', '海报', '苹果'], ['test_data.xlsx'])
('C:/Users/ThinkStation/Desktop/test\\文件', [], ['main.py', 'manage.py', '草稿本.docx'])
('C:/Users/ThinkStation/Desktop/test\\海报', [], ['18.jpg', '19.jpg', '20.jpg', '21.jpg'])
('C:/Users/ThinkStation/Desktop/test\\苹果', [], ['0.jpg', '1.jpg', '2.jpg', '3.jpg', '4.jpg'])
'''
os.path.abspath(path):返回绝对路径
path_r = './test'
print(os.path.abspath(path_r))#C:\Users\ThinkStation\Desktop\test
os.path.dirname(path):返回文件夹名称
os.path.getsize(path):返回文件/文件夹的大小,以字节为单位
path2='C:/Users/ThinkStation/Desktop/airplane-expend'
print( os.path.getsize(path2))#393216
os.path.isabs(path):判断路径是否是一个绝对路径
path = 'C:/Users/ThinkStation/Desktop/test'
path_r = './test'
print(os.path.isabs(path_r))#False
print(os.path.isabs(path))#True
os.path.isfile(path):判断是否是一个文件
os.path.isdir(path):判断是否是一个文件夹
print(os.path.isfile(path))#False
print(os.path.isdir(path))#True
os.path.join(path, *path):智能拼接文件路径
拼接方式1:直接+
path3 = 'C:/Users/ThinkStation/Desktop'
path4='test'
filepath = path3 + '/' + path4
print(filepath)#C:/Users/ThinkStation/Desktop/test
print(os.path.join(path3,path4))#C:/Users/ThinkStation/Desktop/test
拼接方式2:os.path.join
print(os.path.join(path3,path4))#C:/Users/ThinkStation/Desktop\test
os.path.split(path):拆分文件路径
print(os.path.split(path))#('C:/Users/ThinkStation/Desktop', 'test')