17 os模块
1 os模块
import os
判断是否是绝对路径
r = os.path.isabs(r'c:\p1\girl.jpg')
print(r)
当前文件所在文件夹路径
path = os.path.dirname(__file__)
print(path)
path = os.getcwd()
print(path)
获取文件的绝对路径
path = os.path.abspath('aa.txt')
print(path)
获取当前文件的绝对路径
path = os.path.abspath(__file__)
print(path)
判断文件类型
r = os.path.isfile(os.getcwd())
print(r)
r = os.path.isdir(os.getcwd())
print(r)
文件的切割
path = r'C:\Users\running\Desktop\python基础\day13(6-14)\代码\day13_文件\code\aa\file01.py'
result = os.path.split(path)
print(result)
print(result[1])
result = os.path.splitext(path)
print(result)
print(result[1])
获取文件的大小
size = os.path.getsize(path)
print(size)
result = os.path.join(os.getcwd(), 'file', 'a', 'a1.jpg')
print(result)
2 os.path里面函数
import os
dir = os.getcwd()
all = os.listdir(r'c:\p1')
f = os.mkdir(r'c:\p3')
os.path.exists(r'c:\p3')
if not os.path.exists(r'c:\p3'):
f = os.mkdir(r'c:\p3')
print(f)
f = os.rmdir(r'c:\p3')
os.remove(r'c:\p3\p4\aa.txt')
f = os.chdir(r'c:\p1')
删除非空文件夹方法
案例:删除P4文件夹
path = r'c:\p3\p4'
filelist = os.listdir(path)
for file in filelist:
path1 = os.path.join(path, file)
os.remove(path1)
else:
os.rmdir(path)
print('删除成功!')
os模块下方法总结:
os.getcwd() 获取当前目录
os.listdir() 浏览文件夹
os.mkdir() 创建文件夹
os.rmdir() 删除空的文件夹
os.remove() 删除文件
os.chdir() 切换目录
3 文件夹的复制
"""
将文件 C:/Users/86132/Desktop/原文件 文件夹里面的呃文件,
已同名的方式保存到 C:/Users/86132/Desktop/复制后文件 文件夹中
"""
import os
def copy(src_path, target_path):
file_list = os.listdir(src_path)
for file in file_list:
file_name = os.path.join(src_path, file)
if os.path.isdir(file_name):
target_new_path = os.path.join(target_path, file)
os.mkdir(target_new_path)
copy(file_name, target_new_path)
else:
with open(file_name, "rb") as operate1:
container = operate1.read()
target_new_path = os.path.join(target_path, file)
with open(target_new_path, "wb") as operate2:
operate2.write(container)
print("复制完成")
copy("C:/Users/86132/Desktop/原文件", "C:/Users/86132/Desktop/复制后文件")