python 的 zipfile 提供了非常便捷的方法来压缩和解压 zip 文件。
例如,在py脚本所在目录中,有如下文件:
复制代码 代码如下:readability/readability.js
readability/readability.txt
readability/readability-print.css
readability/sprite-readability.png
readability/readability.css
将 readability 目录中的文件压缩到脚本所在目录的 readability.zip 文件中,保持相同的文件结构,然后打印出生成的压缩包 的文件列表,再用两种方式分别解压文件到脚本所在目录的 output 目录和 output/bak 目录中。
脚本如下:
#!/usr/vin/env python
# coding: utf-8
"""
压缩和解压zip文件
"""
import os
import zipfile
def 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:
# 获取文件相对路径,在压缩包内建立相同的目录结构
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 f
if __name__ == '__main__':
zip_file = 'readability.zip'
compress(zip_file, os.path.join(os.getcwd(), 'readability'))
printdirzip_file)
extract(zip_file, 'output')</pre>
标签:
Python
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“使用Python压缩和解压缩zip文件的教程”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新动态
2025年11月01日
2025年11月01日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]