python 压缩解压文件


from zipfile import ZipFile
with ZipFile("mynew.zip","w") as myzip:
    myzip.write('iris.png')
extracting = ZipFile('hey.zip')
extracting.extractall()

#直接进行解压的话就会解压到当前的目录。

extracting.namelist()
extracting.extract('hey/1.txt', 'E:\\one_more_file')
#当然也可以解压单独一个文件。
extracting.close()
#最后记得关闭一下。


#%%
import zipfile
import os

file_list = os.listdir(r'.')

for file_name in file_list:
    if os.path.splitext(file_name)[1] == '.zip':
        print(file_name)
        file_zip = zipfile.ZipFile(file_name, 'r')
        for file in file_zip.namelist():
            file_zip.extract(file, r'.')
        file_zip.close()
        os.remove(file_name)

#%%
import os
import shutil
import zipfile
from os.path import join, getsize
#%%
def zip_file(src_dir):
    zip_name = src_dir +'.zip'
    z = zipfile.ZipFile(zip_name,'w',zipfile.ZIP_DEFLATED)
    for dirpath, dirnames, filenames in os.walk(src_dir):
        fpath = dirpath.replace(src_dir,'')
        fpath = fpath and fpath + os.sep or ''
        for filename in filenames:
            z.write(os.path.join(dirpath, filename),fpath+filename)
            print ('==压缩成功==')
    z.close()
#%%
def unzip_file(zip_src, dst_dir):
    r = zipfile.is_zipfile(zip_src)
    if r:     
        fz = zipfile.ZipFile(zip_src, 'r')
        for file in fz.namelist():
            fz.extract(file, dst_dir)       
    else:
        print('This is not zip')

ref:   https://blog.csdn.net/abcwanglinyong/article/details/80840813

发布了63 篇原创文章 · 获赞 52 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_41521681/article/details/97544006