使用python进行文件夹的压缩

可以使用自带的库 shutil / zipfile

以下使用 shutil下的make_archive方法 

make_archive('目标文件路径','压缩文件后缀','需要压缩的目录')

压缩后缀支持以下几种格式:

        压缩后缀    实际压缩

             zip              zip

             tar               tar

           gztar             tar.gz

           bztar             tar.bz2
           xztar             tar.xz

import os
import shutil


def move_file(besave_dir, fm):
    """
    将文件夹压缩成指定格式的压缩包
    :param besave_dir: 压缩文件夹的目录 如 ---r"D:\save"
    :param format: 压缩的格式:"zip", "tar", "gztar","bztar", "xztar"
    :return:
    """
    if os.path.exists(besave_dir):
        zip_name = shutil.make_archive(besave_dir, f'{fm}', besave_dir)
        print(zip_name) # 返回文件的最终路径


besave_dir = r"D:\save"
fm = "xztar"
move_file(besave_dir, fm)

# 文件夹下有文件和文件夹也可以压缩

 make_archive('目标文件路径','压缩文件后缀','需要压缩的目录')

目标文件路径:可以修改保存路径和保存名称

--------------

        1.make_archive( r"D:\save" , 'zip' , r"D:\save")

        将d盘下的save文件压缩为save.zip并保存在d盘目录下

--------------

        2.make_archive( r"D:\hello\world" , 'zip' , r"D:\save")

        将d盘下的save文件压缩为world.zip并保存在d盘hello目录下,若hello目录不存会自动创建

你可能感兴趣的:(python)