欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python 壓縮打包文件/文件夾的方法

 更新時間:2023年12月04日 08:27:14   作者:gongzairen  
本文主要介紹了Python?壓縮打包文件/文件夾的方法,分兩種類型處理,打包文件是需要傳入文件的路徑,打包文件夾是傳入文件夾的路徑,感興趣的可以了解一下

介紹

實(shí)現(xiàn)壓縮打包文件/文件夾的方法,分兩種類型處理,打包文件是需要傳入文件的路徑,打包文件夾是傳入文件夾的路徑

實(shí)現(xiàn)壓縮打包的代碼

import os
import shutil
from zipfile import ZipFile


# 壓縮打包文件
def compress_pack_file(zip_path, compress_type="file", file_path_list=[], folder_path=""):
    """
    傳入的是文件路徑列表則壓縮指定文件,傳入的是文件夾則壓縮該文件夾
    :param zip_path: 需要寫入的zip文件路徑
    :param compress_type: 壓縮的類型:"file":壓縮指定文件;"folder":壓縮文件夾
    :param file_path_list: 文件路徑列表
    :param folder_path: 文件夾路徑
    :return:
    """
    data_dict = {"data": "", "warning_info": "", "error_info": "", }
    try:
        if compress_type == "file":
            if not len(file_path_list):
                data_dict["error_info"] = "沒有文件需要壓縮打包"
                return data_dict

            with ZipFile(zip_path, 'w') as zip_file:
                for file_path in file_path_list:
                    if os.path.exists(file_path):
                        file_name = os.path.basename(file_path)
                        zip_file.write(file_path, file_name)
                    else:
                        data_dict["warning_info"] += f"【{file_path}】無法壓縮打包" + "\n"
        elif compress_type == "folder":
            if zip_path == folder_path:
                data_dict["error_info"] = "不能壓縮打包"
                return data_dict
            file_name_without_ext = os.path.splitext(zip_path)[0]
            shutil.make_archive(file_name_without_ext, 'zip', folder_path)
            
        else:
            data_dict["error_info"] = f"所選壓縮打包類型無效"

    except Exception as e:
        data_dict["error_info"] = f"執(zhí)行壓縮打包失敗"
        print(e)

    return data_dict


if __name__ == '__main__':
    f_path = r"D:\BusinessProject\結(jié)果文件\2023-12-01"
    z_p = r"D:\BusinessProject\結(jié)果文件\2023-12-01\壓縮文件.zip"
    f_l = [
        'D:\\BusinessProject\\結(jié)果文件\\2023-12-01\\2023-11-29-2023-11-29-官方旗艦店--2023-12-01_10:57.xlsx',
        'D:\\BusinessProject\\官方旗艦店--2023-12-01_11:00.xlsx',
        'D:\\BusinessProject\\官方旗艦店--2023-12-01_11:01.xlsx',
        'D:\\BusinessProject\\官方旗艦店--2023-12-01_11:02.xlsx',
        'D:\\BusinessProject\\臥室家具旗艦店--2023-12-01_11:01.xlsx',
        'D:\\BusinessProject\\臥室家具旗艦店--2023-12-01_11:02.xlsx']
    fl_path = 'D:\\BusinessProject\\結(jié)果文件\\2023-12-01\\2023-11-29-2023-11-29-官方旗艦店--2023-12-01_10:57.xlsx'

    # result_dict = compress_pack_file(z_p, "file", file_path_list=f_l)  # 壓縮打包文件
    result_dict = compress_pack_file(z_p, "folder", folder_path=fl_path)  # 壓縮打包文件夾
    print(result_dict)

實(shí)現(xiàn)查找文件夾的文件路徑代碼

import os


file_paths = []
f_path = r"D:\BusinessProject\結(jié)果文件\2023-12-01"
for root, dirs, files in os.walk(f_path):
    for file_name in files:
        file_path = os.path.join(root, file_name)
        file_paths.append(file_path)

print(file_paths)

到此這篇關(guān)于Python 壓縮打包文件/文件夾的方法的文章就介紹到這了,更多相關(guān)Python 壓縮打包文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 關(guān)于Kotlin中SAM轉(zhuǎn)換的那些事

    關(guān)于Kotlin中SAM轉(zhuǎn)換的那些事

    這篇文章主要給大家介紹了關(guān)于Kotlin中SAM轉(zhuǎn)換的那些事,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Pytorch使用transforms

    Pytorch使用transforms

    這篇文章主要介紹了Pytorch使用transforms,tansforms功能,通俗地講,類似于在計算機(jī)視覺流程里的圖像預(yù)處理部分的數(shù)據(jù)增強(qiáng)。下面來看看文章的具體內(nèi)容介紹吧,需要的朋友可以參考一下
    2021-12-12
  • django框架cookie和session用法實(shí)例詳解

    django框架cookie和session用法實(shí)例詳解

    這篇文章主要介紹了django框架cookie和session用法,結(jié)合實(shí)例形式詳細(xì)分析了Django框架cookie和session的功能、原理、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-12-12
  • python 如何設(shè)置柱狀圖參數(shù)

    python 如何設(shè)置柱狀圖參數(shù)

    這篇文章主要介紹了在python中設(shè)置柱狀圖參數(shù)的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 基于Python實(shí)現(xiàn)簡單學(xué)生管理系統(tǒng)

    基于Python實(shí)現(xiàn)簡單學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了基于Python實(shí)現(xiàn)簡單學(xué)生管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • python中pyc、?pyd文件及生成使用完整實(shí)例代碼

    python中pyc、?pyd文件及生成使用完整實(shí)例代碼

    這篇文章主要介紹了python中pyc、?pyd文件及生成使用的相關(guān)資料,重點(diǎn)講解了如何使用Python解釋器編譯.py文件為.pyc文件,以及如何使用Cython和distutils工具將C/C++代碼編譯為.pyd文件,需要的朋友可以參考下
    2025-04-04
  • Python實(shí)現(xiàn)的連接mssql數(shù)據(jù)庫操作示例

    Python實(shí)現(xiàn)的連接mssql數(shù)據(jù)庫操作示例

    這篇文章主要介紹了Python實(shí)現(xiàn)的連接mssql數(shù)據(jù)庫操作,結(jié)合實(shí)例形式分析了Python安裝pymssql模塊以及基于pymssql模塊連接sql2008 R2數(shù)據(jù)庫的具體操作技巧,需要的朋友可以參考下
    2018-08-08
  • Python標(biāo)準(zhǔn)庫中隱藏的利器(示例詳解)

    Python標(biāo)準(zhǔn)庫中隱藏的利器(示例詳解)

    在命令行中直接使用Python標(biāo)準(zhǔn)庫的模塊,最大的好處就是就是不用寫代碼,就能使用其中的功能,當(dāng)臨時需要一些某些功能的時候,用這種方式會快捷,方便很多,這篇文章主要介紹了Python標(biāo)準(zhǔn)庫中隱藏的利器,需要的朋友可以參考下
    2023-11-11
  • Python中的?pass?占位語句

    Python中的?pass?占位語句

    這篇文章主要介紹了Python中的?pass?占位語句,Python?pass是空語句,是為了保持程序結(jié)構(gòu)的完整性,下文具體的相關(guān)內(nèi)容介紹需要的小伙伴可以參考一下
    2022-04-04
  • Python實(shí)現(xiàn)批量文件自定義命名

    Python實(shí)現(xiàn)批量文件自定義命名

    有時候我們經(jīng)常需要對某一個文件夾中的文件進(jìn)行重命名修改,但是我們一個一個取修改將會非常繁瑣,下面我們就來利用Python實(shí)現(xiàn)批量文件自定義命名吧
    2024-11-11

最新評論