Python压缩当前文件夹脚本

在日常工作中,我们经常需要将一些文件夹进行压缩,以便于传输、备份或节省存储空间。Python作为一种强大的编程语言,可以帮助我们快速实现这一功能。本文将介绍如何使用Python编写一个简单的脚本来压缩当前文件夹。

1. 安装必要的库

在使用Python进行文件压缩前,我们需要安装一个用于处理压缩文件的库。常用的库包括zipfileshutil。可以使用以下命令安装这两个库:

pip install zipfile
pip install shutil

2. 编写压缩脚本

接下来,我们开始编写压缩脚本。下面是一个简单的Python脚本,用于压缩当前文件夹:

import zipfile
import os

def compress_folder(folder_path):
    # 获取当前文件夹名称
    base_name = os.path.basename(folder_path)
    
    # 创建压缩文件名称
    zip_name = f'{base_name}.zip'
    
    # 打开压缩文件
    with zipfile.ZipFile(zip_name, 'w') as zipf:
        # 遍历当前文件夹
        for root, dirs, files in os.walk(folder_path):
            for file in files:
                # 将文件添加到压缩文件中
                file_path = os.path.join(root, file)
                arc_name = os.path.relpath(file_path, folder_path)
                zipf.write(file_path, arcname=arc_name)

    print(f'压缩完成,压缩文件保存在{zip_name}')

# 压缩当前文件夹
current_folder = os.getcwd()
compress_folder(current_folder)

3. 序列图

下面是一个使用mermaid语法表示的序列图,展示了压缩文件夹的过程:

sequenceDiagram
    participant User
    participant PythonScript
    participant zipfile
    participant os

    User ->> PythonScript: 请求压缩当前文件夹
    PythonScript ->> os: 获取当前文件夹路径
    os -->> PythonScript: 返回当前文件夹路径
    PythonScript ->> zipfile: 创建压缩文件
    zipfile -->> PythonScript: 压缩文件创建成功
    PythonScript ->> os: 遍历文件夹
    os -->> PythonScript: 返回文件列表
    PythonScript ->> zipfile: 添加文件到压缩文件中
    zipfile -->> PythonScript: 文件添加成功
    PythonScript ->> User: 压缩完成

4. 关系图

我们还可以使用mermaid语法创建一个ER图,表示Python脚本中的关系:

erDiagram
    FILE {
        string file_name
        string file_path
        string file_size
    }
    ZIPFILE {
        string zip_name
        string zip_size
    }

    ZIPFILE ||--o{ FILE

结语

通过本文的介绍,我们学习了如何使用Python编写一个简单的脚本来压缩当前文件夹。这个脚本可以帮助我们快速、方便地将文件夹压缩成zip格式,提高工作效率。希望本文对你有所帮助,谢谢阅读!