• <tfoot id="ukgsw"><input id="ukgsw"></input></tfoot>
    
    • 久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
      分享

      使用Python實現文件壓縮和解壓

       yjt2004us 2020-03-07

      大家可能都熟悉.zip格式的文件。它可以把多個文件,壓縮成一個文件。這在網絡上傳輸時很有用,而且節省硬盤空間。

      接下來,我們使用Python實現壓縮和解壓。

      1、讀取ZIP文件信息


      要讀取ZIP文件的內容,首先必須創建一個ZipFile對象。ZipFile對象在概念上與File對象相似。

      要創建一個 ZipFile 對象,就調用 zipfile.ZipFile()函數,向它傳入一個字符串,表示.zip 文件的文件名。請注意,zipfile 是 Python 模塊的名稱,ZipFile()是函數的名稱。














      import zipfile
      # 傳入壓縮文件zfile.zip獲取相關信息zip_file = zipfile.ZipFile('zfile.zip')
      # 獲取壓縮文件中的內容f_content = zip_file.namelist()
      # 壓縮前的大小f_size = zip_file.getinfo('zfile/a.txt').file_size
      # 壓縮后的大小c_size = zip_file.getinfo('zfile/a.txt').compress_size

      ZipFile 對象有一個 namelist()方法,返回 ZIP 文件中包含的所有文件和文件夾 的字符串的列表。這些字符串可以傳遞給 ZipFile 對象的 getinfo()方法,返回一個關 于特定文件的 ZipInfo 對象。ZipInfo 對象有自己的屬性,諸如表示字節數的 file_size 和 compress_size,它們分別表示原來文件大小和壓縮后文件大小。ZipFile 對象表示 整個歸檔文件,而 ZipInfo 對象則保存該歸檔文件中每個文件的有用信息。

      2、從 ZIP 文件中解壓縮


      ZipFile 對象的 extractall()方法從 ZIP 文件中解壓縮所有文件和文件夾,放到當 前工作目錄中。







      import zipfile
      zip_file = zipfile.ZipFile('zfile.zip')# 解壓zip_extract = zip_file.extractall()zip_extract.close()
      運行這段代碼后, example.zip 的內容將被解壓縮到 C:\。或者, 你可以向 extractall()傳遞的一個文件夾名稱,它將文件解壓縮到那個文件夾,而不是當前工作 目錄。如果傳遞給 extractall()方法的文件夾不存在,它會被創建。例如,如果你用 exampleZip.extractall('C:\ delicious')取代?處的調用,代碼就會從 example.zip 中解壓 縮文件,放到新創建的 C:\delicious 文件夾中。ZipFile 對象的 extract()方法從 ZIP 文件中解壓縮單個文件。


      3、創建和添加到 ZIP 文件


      要創建你自己的壓縮 ZIP 文件,必須以“寫模式”打開 ZipFile 對象,即傳入'w' 作為第二個參數(這類似于向 open()函數傳入'w',以寫模式打開一個文本文件)。

      如果向 ZipFile 對象的 write()方法傳入一個路徑,Python 就會壓縮該路徑所指 的文件,將它加到 ZIP 文件中。write()方法的第一個參數是一個字符串,代表要添 加的文件名。第二個參數是“壓縮類型”參數,它告訴計算機使用怎樣的算法來壓 縮文件。可以總是將這個值設置為 zipfile.ZIP_DEFLATED(這指定了 deflate 壓縮 算法,它對各種類型的數據都很有效)。









      import zipfile
      zip_file = zipfile.ZipFile('new.zip','w')# 把zfile整個目錄下所有內容,壓縮為new.zip文件zip_file.write('zfile',compress_type=zipfile.ZIP_DEFLATED)# 把c.txt文件壓縮成一個壓縮文件# zip_file.write('c.txt',compress_type=zipfile.ZIP_DEFLATED)zip_file.close()

      這段代碼將創建一個新的 ZIP 文件,名為 new.zip,它包含 spam.txt 壓縮后的內容。要記住,就像寫入文件一樣,寫模式將擦除 ZIP 文件中所有原有的內容。如果 只是希望將文件添加到原有的 ZIP 文件中,就要向 zipfile.ZipFile()傳入'a'作為第二 個參數,以追加模式打開 ZIP 文件。

        本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發表

        請遵守用戶 評論公約

        類似文章 更多

        主站蜘蛛池模板: 精品国产人妻一区二区三区久久| 国产网友愉拍精品视频手机 | 国产白嫩护士在线播放| 免费国产午夜理论片不卡| 国产精品99久久久久久WWW| 男女动态无遮挡动态图| 久久精品国产亚洲不AV麻豆| 男人扒开女人腿桶到爽免费| 嫩草成人AV影院在线观看| 色老头在线一区二区三区| 国产线播放免费人成视频播放| 丰满的熟妇岳中文字幕| 亚洲av无码精品色午夜蛋壳| 亚洲电影天堂在线国语对白| 四虎亚洲精品无码| 欧美成人VA免费大片视频| 小12萝8禁用铅笔自慰喷水| 国产永久免费高清在线观看| 人妻少妇精品一区二区三区| 午夜免费无码福利视频麻豆| 内射口爆少妇麻豆| 成人又黄又爽又色的视频| 亚洲精品午睡沙发系列| 日本一区二区在线高清观看| 99久久99精品久久久久久| 亚洲欧美日韩综合在线丁香| 国产一级av在线播放| 精品午夜福利在线观看| 99热精品毛片全部国产无缓冲 | 亚洲综合无码一区二区| 国产精品亚洲二区在线播放| 亚洲AV综合色区无码二区偷拍| 日本成熟少妇激情视频免费看| 我的公强要了我高潮在线观看| 色翁荡熄又大又硬又粗又视频| 国产白嫩护士在线播放| bt天堂新版中文在线| 国产卡一卡二卡三精品 | 成人片黄网站色大片免费观看软件| 亚洲欧美偷国产日韩| 亚洲精品无码MV在线观看软件|