Python解压缩ZIP格式
转自:http://blog.csdn.net/linux__kernel/article/details/8271326
很多人在Google上不停的找合适自己的压缩,殊不知Py的压缩很不错。可以试试。当然C#,Java的压缩也有第三方的类。Py有很多美名:数学理论强大,数据结构高级等等,关于压缩算法当然用Py更加简单易用,达到目的才是最重要的。
Python压缩ZIP文件:
import zipfile
f = zipfile.ZipFile(target,'w',zipfile.ZIP_DEFLATED)
f.write(filename,file_url)
f.close()
其中target:是压缩后要保存的路径,可以是: 'C:\\temp\\'
ZIP_DEFLATED:表示压缩,还有一个参数:ZIP_STORE:表示只打包,不压缩。这个Linux中的gz跟tar格式有点类似.
write方法如果只有一个参数filename的话,表示把你filename所带的路径全部压缩到zip文件中。如果带两个参数,表示把filename路径中的那个file压缩一下并且存放到file_url中,中间没有增加任何的文件夹。
如果要压缩很多的文件,循环的write就ok了
最后close掉。
Python解压ZIP文件:
f = zipfile.ZipFile("zipfilePath",'r')
for file in f.namelist():
f.extract(file,"temp/")
zipfilePath是压缩文件的路径
循环访问该压缩文件中的文件,并且一个一个file的解压到对应的"temp\"文件夹中
--------------------------------------------------------------------------------------------------------------
为什么我会用Python来进行解压缩呢,首先对于一个技术的取向,要看技术的擅长处,很显然如果你想用Python架构一个大型的Web,有点不可取,有人会跟我争,谁说的呀,Django不是很好的架构嘛,那Django是你写出来的吗?你的架构思想在哪里?所以大部分Web还是用Java或者C#架构,这仅仅是很初步的语言层面,上升到扩展、效率、逻辑等等就很多了。
为什么我喜欢Python,说一个事情。每当我在以前的工作中,不断的重复很多逻辑,开发流程的时候,Python总是带给我惊喜。比如解压缩。如果是Java跟C#,我会毫不犹豫的去Google一下开源类,然后下载下来,然后编译,然后引用、导入,再找找使用指南……
不错,这是一条路,很好。只要解决问题就好。
但是在生活层面上,总是缺少一点,没有情调,没有任何触动心灵的颤动。
用Python吧!Python肯定有解压缩,没有不可能的,只是你没有想到,我不信一个发展了10年的语言还有什么缺憾,对照C++ SLT也完善的差不多了!想到的都有!
标准库中已经引入了zipfile就ok了
压缩跟解压都3行代码,如果你极端一点1行也能搞定。
希望你也喜欢上Py
解压当前目录下的zip文件到当前目录,并删除原有的zip文件
import zipfile
import os file_list = os.listdir(r'.') for file_name in file_list:
if os.path.splitext(file_name)[1] == '.zip':
print file_name file_zip = zipfile.ZipFile(file_name, 'r')
for file in file_zip.namelist():
file_zip.extract(file, r'.')
file_zip.close()
os.remove(file_name)
Python解压缩ZIP格式的更多相关文章
- java压缩/解压缩zip格式文件
因为项目要用到压缩.解压缩zip格式压缩包,只好自己封装一个,对于网上流行的中文乱码的问题,本文的解决方法是用apache的包代替jdk里的.基本上还是比较好用的. 废话少说,直接上代码. } ...
- Python 解压缩Zip和Rar文件到指定目录
#__author__ = 'Joker'# -*- coding:utf-8 -*-import urllibimport osimport os.pathimport zipfilefrom zi ...
- Java实现文件压缩与解压[zip格式,gzip格式]
Java实现ZIP的解压与压缩功能基本都是使用了Java的多肽和递归技术,可以对单个文件和任意级联文件夹进行压缩和解压,对于一些初学者来说是个很不错的实例. zip扮演着归档和压缩两个角色:gzip并 ...
- PclZip:强大的PHP压缩与解压缩zip类
PclZip简介PclZip是一个很强大的压缩与解压缩zip文件的PHP类,PclZip library能够压缩与解压缩Zip格式的压缩档(WinZip.PKZIP):且能对此类类档案进行处理,包括产 ...
- Java对zip格式压缩和解压缩
Java对zip格式压缩和解压缩 通过使用java的相关类可以实现对文件或文件夹的压缩,以及对压缩文件的解压. 1.1 ZIP和GZIP的区别 gzip是一种文件压缩工具(或该压缩工具产生的压缩文件格 ...
- Linux下zip格式文件的解压缩和压缩
Linux下zip格式文件的解压缩和压缩 Linux下的软件包很多都是压缩包,软件的安装就是解压缩对应的压缩包.所以,就需要熟练使用常用的压缩命令和解压缩命令.最常用的压缩格式有.tar.gz/tgz ...
- 服务器文档下载zip格式 SQL Server SQL分页查询 C#过滤html标签 EF 延时加载与死锁 在JS方法中返回多个值的三种方法(转载) IEnumerable,ICollection,IList接口问题 不吹不擂,你想要的Python面试都在这里了【315+道题】 基于mvc三层架构和ajax技术实现最简单的文件上传 事件管理
服务器文档下载zip格式 刚好这次项目中遇到了这个东西,就来弄一下,挺简单的,但是前台调用的时候弄错了,浪费了大半天的时间,本人也是菜鸟一枚.开始吧.(MVC的) @using Rattan.Co ...
- Python操作Zip文件
Python操作Zip文件 需要使用到zipfile模块 读取Zip文件 随便一个zip文件,我这里用了bb.zip,就是一个文件夹bb,里面有个文件aa.txt. import zipfile # ...
- 安装mysql(zip格式安装包)
mysql下载地址:http://www.mysql.com/ 一. zip格式,解压缩之后要进行配置.解压之后可以将该文件夹改名,放到合适的位置,比如把文件夹改名为MySQL Server 5.6( ...
随机推荐
- ubuntu使用git时,终端不显示git分支。
1:问题描述: 在Windows环境下习惯使用git bash操作git分支,最近学习linux环境,发现linux环境终端不显示git分支,相关现象如下: 期望效果是: 我的linux环境 ...
- 2014 蓝桥杯 预赛 c/c++ 本科B组 第九题:地宫取宝(12') [ dp ]
历届试题 地宫取宝 时间限制:1.0s 内存限制:256.0MB 锦囊1 锦囊2 锦囊3 问题描述 X 国王有一个地宫宝库.是 n x m 个格子的矩阵.每个格子放一件 ...
- hdu 1429 bfs+二进制状态压缩
开始时候只用了BFS,显然超时啊,必然在结构体里加一个数组什么的判重啊,开始用的一个BOOL数组,显然还是不行,复杂度高,每次都要遍历数组来判重:后百度之,学习了二进制状态压缩,其实就用一个二进制数来 ...
- [Bzoj3131][Sdoi2013]淘金(数位dp)(优先队列)
3131: [Sdoi2013]淘金 Time Limit: 30 Sec Memory Limit: 256 MBSubmit: 847 Solved: 423[Submit][Status][ ...
- weblogic线程阻塞性能调优(图解)
转自:http://blog.csdn.net/z69183787/article/details/12647539 声明:出现这个问题有程序方面.网络方面.weblogic设置方面等等原因,此文章主 ...
- 百亿级企业级 RPC 框架开源了!
今天给大家介绍给一款性能卓越的 RPC 开源框架,其作者就是我推荐每个 Java 程序员都应该看的<Java 生态核心知识点整理>的原作者张玉龙. 说实话我第一次看到这个资料的时候,就感觉 ...
- 一起talk C栗子吧(第一百回:C语言实例--使用信号量进行进程间同步与相互排斥一)
各位看官们.大家好,上一回中咱们说的是进程间同步与相互排斥的样例,这一回咱们说的样例是:使用信号量进行进程间同步与相互排斥. 闲话休提,言归正转.让我们一起talk C栗子吧! 看官们,信号量是由著名 ...
- 【PostgreSQL】PostgreSQL操作-psql基本命令
在阅读的过程中有不论什么问题,欢迎一起交流 邮箱:1494713801@qq.com QQ:1494713801 一.建立数据库连接 ---------------- 接入PostgreSQL数 ...
- 无限级分类Asp.net Mvc实现
无限级分类Asp.net Mvc实现 无限级分类涉及到异步加载子类.加载当前类和匹配问题,现在做一个通用的实现. (一) 效果如下: (二)设计.实现及使用 (1)数据库 (a)表设计db ...
- REST技术第四步 多个參数注解问题
经过实验,发如今使用@BeanParam注解的查询类字段上. @FormParam和@QueryParam不能同一时候加上去,仅仅能加一个,否则会出现取不到数据的情况. 并且在方法參数上两个注解也不能 ...