日常辦公小技巧!利用Python對文件進行批量壓縮和解壓!


正摸魚開心着呢,快下班了行政小姐姐突然發過來一堆文件讓我幫忙處理下,在經過小姐姐長達五分鍾的撒嬌后,我迫不得已才答應幫她做一下~

在這里插入圖片描述
這不是小問題嗎,用Python分分鍾就能實現文件的壓縮和解壓~當然批量改名字、批量創建等等都不是問題,今天主要給大家展示一下Python壓縮文件和解壓。
在這里插入圖片描述
為了不讓大家孤單學習,我特地創了個群,點我直接加入就好了,沒事大家一起吹吹牛逼,互相學習交流~點我快速加入

包括這些東西都直接打包好了,進群直接領取~
Python 環境、pycharm編輯器/永久激活/翻譯插件
python 零基礎視頻教程
Python 界面開發實戰教程
Python 爬蟲實戰教程
Python 數據分析實戰教程
python 游戲開發實戰教程
Python 電子書100本
Python 學習路線規划
都可以在群里免費領取
Python 相關問題可解答
Python 相關外包需求可發布
Python 相關招聘需求可發布

在這里插入圖片描述

好了不多嗶嗶,我們開始今天的正文~
通常我們用的壓縮文件格式有:

  1. rar:Windows 環境下用的比較多的壓縮,比較著名的GUI工具是winrar tar: Linux系統下的打包工具,只打包,不壓縮;
  2. gz:即gzip,通常只能壓縮一個文件。與tar結合起來就可以實現先打包,再壓縮;
  3. tgz:即gz。先用tar打包,然后再用gz壓縮得到的文件;
  4. zip:不同於gzip,雖然使用相似的算法,可以打包壓縮多個文件,不過分別壓縮文件,壓縮率低於tar;
  5. 7z:7zip壓縮軟件支持的格式,壓縮效率較高;

當然除了使用Python外,你還可以選擇使用壓縮解壓縮軟件或命令手動進行處理。

zip文件

zipfile是Python里用來做zip格式編碼的壓縮和解壓縮的module,zipfile里有兩個非常重要的class:ZipFile和ZipInfo。ZipFile是主要的類,用來創建和讀取zip文件,而ZipInfo是存儲的zip文件的每個文件的信息。

示例代碼:
在這里插入圖片描述

tar.gz文件
tarfile 模塊可以用來讀寫 tar 歸檔,包括使用 gzip, bz2 和 lzma 壓縮的歸檔。在使用tarfile是必須了解模式:

mode 必須是 ‘filemode[:compression]’ 形式的字符串,其默認值為 ‘r’。 以下是模式組合的完整列表:

模式 動作

針對特殊的目的,還存在第二種 mode 格式: ‘filemode|[compression]’。 tarfile.open() 將返回一個將其數據作為數據塊流來處理的 TarFile 對象:

模式 動作
1

代碼示例:

rar文件

我們可以使用rarfile來解壓.rar的文件,但是不支持用rarfile來壓縮rar文件。
rarfile以下unrar組件,但是使用pip install unrar安裝后發現會報如下錯誤:

Couldn’t find path to unrar library…

這是因為 Python下的 unrar 還依賴了RAR官方的庫。

Windows的安裝

Linux的安裝

代碼示例:

7z文件

要壓縮和解壓縮.7z文件需要用到py7zr組件。代碼示例:

兄弟們,快去試試吧,沖沖沖!

在這里插入圖片描述

在這里插入圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM