os.remove(path)
删除文件 path. 如果path是一个目录, 抛出 OSError错误。如果要删除目录,请使用rmdir().
os.rmdir(path)
删除目录 path,要求path必须是个空目录,否则抛出OSError错误
os.removedirs(path)
递归地删除目录。类似于rmdir(), 如果子目录被成功删除, removedirs() 将会删除父目录;但子目录没有成功删除,将抛出错误。
以使用 os 模块的 os.path.exists() 方法来检测文件、文件夹是否存在:
os.path.isdir
检测文件是否是文件夹
os.path.getsize()
查看文件大小
os.path.isfile()
检测文件是否是文件
使用os.access()判断文件是否可进行读写操作。
os.access(path, mode)
path为文件路径,mode为操作模式,有这么几种:
os.F_OK: 检查文件是否存在;
os.R_OK: 检查文件是否可读;
os.W_OK: 检查文件是否可以写入;
os.X_OK: 检查文件是否可以执行
获取文件夹大小,包含所有子目录:
def file_size(path):
m = 0
dirs = os.listdir(path)
for dir in dirs:
path_tmp = os.path.join(path, dir)
if os.path.isdir(path_tmp):
m = m + file_size(path_tmp)
else:
m = m + os.path.getsize(path_tmp)
return m
获取文件夹文件个数,包含所有子目录:
def get_file_num(path):
x = 0
try:
for lists in os.listdir(path):
sub_path = os.path.join(path, lists)
x += 1
if os.path.isdir(sub_path):
(status, file_num) = get_file_num(sub_path)
if(0 != status):
return (1, 0)
x = x + file_num
return (0, x)
except Exception as e:
print("ERROR", "get file num failed, %s"%e)
return (1, 0)