python压包的概念及实例详解


Posted in Python onFebruary 17, 2021

对于一些分解后的元素,我们也是有重新归类的需要。那么我们把解包的恢复过程,叫做压包。这里要用到zip函数的方法,对元素重新进行打包处理,在之前的学习中我们已经对zip函数有所接触。下面我们就python压包的概念、方法进行介绍,然后带来相关的实例使用。

1、概念

压包是解包的逆过程,用zip函数实现。

2、方法

(1)zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象(Python3)。

(2)如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用*号操作符,可以将元组解压为列表。

3、实例

先是zip函数将a b压包成为一个可迭代对象,对可迭代对象的每一个元素((‘a', 1))进行解包(i, j = (‘a', 1)),此时就可以分别调用i j变量进行计算。

>>> a = [0, 1, 2]
>>> b = [1, 2, 3]
>>> for i, j in zip(a, b):
...   print(i+j)
...
1
3
5

知识点扩展

1.Python--gzip压缩ZIP文件:

import gzip
f_src = open("data.txt", "rb") #打开文件
f_tar= gzip.open("data.txt.gz", "wb")#创建压缩文件对象
f_tar.writelines(f_src)
f_tar.close()
f_src.close()
import gzip 
g = gzip.GzipFile(filename="", mode="wb", compresslevel=9, fileobj=open('sitemap.log.gz', 'wb'))
g.write(open('d:\\test\\sitemap.xml').read())
g.close()

其中,filename参数是压缩文件内文件的名字,为空也可以,不修改。fileobj是生成的压缩文件对象,它的路径名称等。最后是把文件写入gzip文件中去,再关闭操作连接。

2.Python--gzip解压ZIP文件:

import gzip
f = gzip.open("data.txt.gz", 'rb')    #打开压缩文件对象
f_out=open("data.txt","w")        #打开解压后内容保存的文件
file_content = f.read()          #读取解压后文件内容
f_out.write(file_content.decode("utf-8")) #写入新文件当中
print(file_content)            #打印读取内容
f.close()
f_out.close()
g = gzip.GzipFile(mode="rb", fileobj=open('d:\\test\\sitemap.log.gz', 'rb'))
open(r"d:\\haha.xml", "wb").write(g.read())

使用的时候注意,函数方法的大小写一点要看仔细,如果gzip文件是这种形式的:*.tar.gz,证明先是由tar命令压缩后,后再由 gzip压缩的,需要先用解压缩tar文件,再用gzip模块解压缩。其实,现在很多网页为了提高浏览器端用户的访问速度,和搜索引擎爬虫抓取的速度,都在使用gzip压缩。

到此这篇关于python压包的概念及实例详解的文章就介绍到这了,更多相关python压包是什么内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python的组合模式与责任链模式编程示例
Feb 02 Python
Python+django实现简单的文件上传
Aug 17 Python
Python解决八皇后问题示例
Apr 22 Python
python实现定时发送qq消息
Jan 18 Python
Python HTML解析器BeautifulSoup用法实例详解【爬虫解析器】
Apr 05 Python
Python FTP文件定时自动下载实现过程解析
Nov 12 Python
python3 pathlib库Path类方法总结
Dec 26 Python
python字符串下标与切片及使用方法
Feb 13 Python
python numpy生成等差数列、等比数列的实例
Feb 25 Python
keras在构建LSTM模型时对变长序列的处理操作
Jun 29 Python
python 绘制场景热力图的示例
Sep 23 Python
python实现web邮箱扫描的示例(附源码)
Mar 30 Python
python解包概念及实例
Feb 17 #Python
requests在python中发送请求的实例讲解
Feb 17 #Python
python切片作为占位符使用实例讲解
Feb 17 #Python
Django视图类型总结
Feb 17 #Python
Python3+SQLAlchemy+Sqlite3实现ORM教程
Feb 16 #Python
Python3+Appium安装及Appium模拟微信登录方法详解
Feb 16 #Python
Python3使用Selenium获取session和token方法详解
Feb 16 #Python
You might like
php使用正则过滤js脚本代码实例
2014/05/10 PHP
Yii2 rbac权限控制之rule教程详解
2016/06/23 PHP
文本加密解密
2006/06/23 Javascript
jQuery Ajax之load()方法
2009/10/12 Javascript
ExtJs 3.1 XmlTreeLoader Example Error
2010/02/09 Javascript
js querySelector和getElementById通过id获取元素的区别
2012/04/20 Javascript
js文件缓存之版本管理详解
2013/07/05 Javascript
JS中数组Array的用法示例介绍
2014/02/20 Javascript
file控件选择上传文件确定后触发的js事件是哪个
2014/03/17 Javascript
jquery form 加载数据示例
2014/04/21 Javascript
JQuery 实现在同一页面锚点链接之间的平滑滚动
2014/10/29 Javascript
超级简单实现JavaScript MVC 样式框架
2015/03/24 Javascript
在Javascript中处理数组之toSource()方法的使用
2015/06/09 Javascript
JSONP原理及简单实现
2016/06/08 Javascript
JS操作JSON方法总结(推荐)
2016/06/14 Javascript
get  post jsonp三种数据交互形式实例详解
2017/08/25 Javascript
详解vue-meta如何让你更优雅的管理头部标签
2018/01/18 Javascript
详解vue文件中使用echarts.js的两种方式
2018/10/18 Javascript
vue中使用带隐藏文本信息的图片、图片水印的方法
2020/04/24 Javascript
js实现有趣的倒计时效果
2021/01/19 Javascript
python3访问sina首页中文的处理方法
2014/02/24 Python
让python同时兼容python2和python3的8个技巧分享
2014/07/11 Python
Python列表(list)常用操作方法小结
2015/02/02 Python
分析python切片原理和方法
2017/12/19 Python
Python中生成器和迭代器的区别详解
2018/02/10 Python
在windows下Python打印彩色字体的方法
2018/05/15 Python
pytorch 调整某一维度数据顺序的方法
2018/12/08 Python
Python并发:多线程与多进程的详解
2019/01/24 Python
详解python opencv、scikit-image和PIL图像处理库比较
2019/12/26 Python
python使用Geany编辑器配置方法
2020/02/21 Python
Nuts.com:优质散装,批发坚果、干果和巧克力等
2017/03/21 全球购物
New Balance波兰官方商城:始于1906年,百年慢跑品牌
2017/08/15 全球购物
美国家用和厨房电器销售网站:Appliances Connection
2020/01/24 全球购物
汽车维修专业个人求职信范文
2014/01/01 职场文书
大学社团活动总结怎么写
2019/06/21 职场文书
如何使用vue3打造一个物料库
2021/05/08 Vue.js