| |
Methods defined here:
- __init__(self)
- Initialize self. See help(type(self)) for accurate signature.
- transform_path(self, file_path)
- # def zip(self,save_zip_name, to_zip): # save_zip_name是带目录的,也可以不带就是当前目录
# # 1.先判断输出save_zip_name的上级是否存在(判断绝对目录),否则创建目录
# save_zip_dir = os.path.split(os.path.abspath(save_zip_name))[0] # save_zip_name的上级目录
# print(save_zip_dir)
# if not os.path.exists(save_zip_dir):
# os.makedirs(save_zip_dir)
# print('创建新目录%s' % save_zip_dir)
# f = zipfile.ZipFile(os.path.abspath(save_zip_name), 'w', zipfile.ZIP_DEFLATED)
# # 2.判断要被压缩的to_zip是否目录还是文件,是目录就遍历操作,是文件直接压缩
# if not os.path.isdir(os.path.abspath(to_zip)): # 如果不是目录,那就是文件
# if os.path.exists(os.path.abspath(to_zip)): # 判断文件是否存在
# f.write(to_zip)
# f.close()
# # print('%s压缩为%s' % (to_zip, save_zip_name))
# else:
# print('%s文件不存在' % os.path.abspath(to_zip))
# else:
# if os.path.exists(os.path.abspath(to_zip)): # 判断目录是否存在,遍历目录
# zipList = []
# for dir, subdirs, files in os.walk(to_zip): # 遍历目录,加入列表
# for fileItem in files:
# zipList.append(os.path.join(dir, fileItem))
# # print('a',zipList[-1])
# for dirItem in subdirs:
# zipList.append(os.path.join(dir, dirItem))
# # print('b',zipList[-1])
# # 读取列表压缩目录和文件
# for i in zipList:
# f.write(i, i.replace(to_zip, '')) # replace是减少压缩文件的一层目录,即压缩文件不包括to_zip这个目录
# # print('%s压缩到%s'%(i,save_zip_name))
# f.close()
# # print('%s压缩为%s' % (to_zip, save_zip_name))
# else:
# print('%s文件夹不存在' % os.path.abspath(to_zip))
#
# def unzip(self,zip_file_path, unzip_dir_path, *, password=None) -> typing.NoReturn:
# '''
# 解压文件/文件夹
# * @param zip_file_path, 压缩文件路径
# * @unzip_dir_path,解压路径
# * @param password, 密码
# '''
# zip_file = zipfile.ZipFile(zip_file_path)
# zip_list = zip_file.namelist() # 得到压缩包里所有文件
#
# for f in zip_list:
# zip_file.extract(f, unzip_dir_path) # 循环解压文件到指定目录
#
# zip_file.close() # 关闭文件,必须有,释放内存
- unzip(self, zip_file_path, unzip_dir_path, *, password='') -> NoReturn
- 解压文件/文件夹
* @param zip_file_path, 压缩文件路径
* @unzip_dir_path,解压路径
* @param password, 密码
- zip(self, file_folder_path, zip_file_path, *, compress_level=5, password=None) -> NoReturn
- 压缩文件/文件夹
* @param file_folder_path, 待压缩的文件和文件夹,例如:"C:\1.txt" "C:\2.txt"
* @param zip_file_path, 压缩文件路径
* @param compress_level, 压缩级别,取值 1~9,默认5,数字越大压缩率越高
* @param password, 密码
Data descriptors defined here:
- __dict__
- dictionary for instance variables (if defined)
- __weakref__
- list of weak references to the object (if defined)
|