代码成效演示
Gitee源码
# -*- coding: utf⑻ -*-
# Version: Python 三.九.七
# Author: TRIX
# Date: 二0二一⑴0-0二 一三:二0:0四
# Use: 批质紧缩指定文件夹 为zip紧缩包
import zipfile
from os import path,walk,chdir
def zipFiles(pathsList):#必要紧缩的文件夹 或者 文件列表铃博网
for i,r in enumerate(pathsList,一):
if path.isfile(r):#若是是文件
fDir,fName=path.split(r)
fPre,fSuf=path.splitext(fName)
chdir(fDir)#扭转当前工做目次
zipPath=fDir+'\\'+fPre+'.zip'#紧缩包途径
zipObj = zipfile.ZipFile(zipPath, 'w', zipfile.ZIP_DEFLATED)#以 deflate紧缩算法 w形式 创立zip工具
zipObj.write(fName)
zipObj.close()
else:#若是是文件夹
chdir(r)#扭转当前工做目次
fDir,fName=path.split(r)
fPre,fSuf=path.splitext(fName)
zipPath=fDir+'\\'+fName+'.zip'
zipObj = zipfile.ZipFile(zipPath, 'w', zipfile.ZIP_DEFLATED)#以 deflate紧缩算法 w形式 创立zip工具
for p, dirs, files in walk(r):
for name in files:#拼接文件名
zPath=path.join(p, name).replace(r+'\\','')
zipObj.write(zPath)
for name in dirs:#拼接目次名
zPath=path.join(p, name).replace(r+'\\','')
zipObj.write(zPath)
zipObj.close()
print('第{}个文件夹紧缩终了,贮存途径{}'.format(i,zipPath))
pathsList=[
r'D:\[download]\forTest\folder_for_test\FFT一',
r'D:\[download]\forTest\folder_for_test',r'D:\[download]\forTest\folder_for_test\新修 Microsoft Excel 工做表铃博网.xlsx']
zipFiles(pathsList)
转自:https://www.cnblogs.com/Trix/p/15362420.html
更多文章请关注《万象专栏》
转载请注明出处:https://www.wanxiangsucai.com/read/cv3145