国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

使用Python壓縮和解壓縮zip文件的教程

2019-11-25 17:32:07
字體:
供稿:網(wǎng)友

python 的 zipfile 提供了非常便捷的方法來壓縮和解壓 zip 文件。

例如,在py腳本所在目錄中,有如下文件:

復(fù)制代碼 代碼如下:
readability/readability.js
readability/readability.txt
readability/readability-print.css
readability/sprite-readability.png
readability/readability.css

將 readability 目錄中的文件壓縮到腳本所在目錄的 readability.zip 文件中,保持相同的文件結(jié)構(gòu),然后打印出生成的壓縮包 的文件列表,再用兩種方式分別解壓文件到腳本所在目錄的 output 目錄和 output/bak 目錄中。

腳本如下:

#!/usr/vin/env python# coding: utf-8"""壓縮和解壓zip文件"""import osimport zipfiledef compress(zip_file, input_dir):  f_zip = zipfile.ZipFile(zip_file, 'w')  for root, dirs, files in os.walk(input_dir):    for f in files:      # 獲取文件相對路徑,在壓縮包內(nèi)建立相同的目錄結(jié)構(gòu)      abs_path = os.path.join(os.path.join(root, f))      rel_path = os.path.relpath(abs_path, os.path.dirname(input_dir))      f_zip.write(abs_path, rel_path, zipfile.ZIP_STORED)def extract(zip_file, output_dir):  f_zip = zipfile.ZipFile(zip_file, 'r')  # 解壓所有文件到指定目錄  f_zip.extractall(output_dir)  # 逐個解壓文件到指定目錄  for f in f_zip.namelist():    f_zip.extract(f, os.path.join(output_dir, 'bak'))def printdir(zip_file):  f_zip = zipfile.ZipFile(zip_file, 'r')  print '== printdir() ============================'  f_zip.printdir()  print  print '== namelist() ============================'  for f in f_zip.namelist():    print fif __name__ == '__main__':  zip_file = 'readability.zip'  compress(zip_file, os.path.join(os.getcwd(), 'readability'))  printdirzip_file)  extract(zip_file, 'output')</pre>


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 横山县| 江川县| 连南| 安义县| 仪陇县| 霸州市| 绿春县| 巴里| 柞水县| 新兴县| 张北县| 巴南区| 宁远县| 襄垣县| 临澧县| 桃园县| 东海县| 丹阳市| 龙山县| 东平县| 娱乐| 澄江县| 长治市| 台东市| 平山县| 吴忠市| 莱芜市| 布拖县| 灵川县| 同仁县| 松阳县| 台北市| 廊坊市| 隆德县| 米林县| 措勤县| 益阳市| 孟连| 香河县| 涡阳县| 临漳县|