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中利用sorted()函数排序的简单教程
Apr 27 Python
Python使用multiprocessing创建进程的方法
Jun 04 Python
python制作爬虫并将抓取结果保存到excel中
Apr 06 Python
实例解析Python中的__new__特殊方法
Jun 02 Python
Pandas 缺失数据处理的实现
Nov 04 Python
基于python实现把图片转换成素描
Nov 13 Python
pytorch 实现tensor与numpy数组转换
Dec 27 Python
TensorFlow2.1.0安装过程中setuptools、wrapt等相关错误指南
Apr 08 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
Jun 28 Python
python 制作网站筛选工具(附源码)
Jan 21 Python
Python实现信息轰炸工具(再也不怕说不过别人了)
Jun 11 Python
基于Python实现对比Exce的工具
Apr 07 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
Yii框架中 find findAll 查找出制定的字段的方法对比
2014/09/10 PHP
php实现微信公众平台账号自定义菜单类
2015/10/11 PHP
PHP给前端返回一个JSON对象的实例讲解
2018/05/31 PHP
PHP实现倒计时功能
2020/11/16 PHP
jquery 锁定弹出层实现代码
2010/02/23 Javascript
关于jquery append() html时的小问题的解决方法
2010/12/16 Javascript
Javascript面向对象之四 继承
2011/02/08 Javascript
从零开始学习jQuery (三) 管理jQuery包装集
2011/02/23 Javascript
详细介绍8款超实用JavaScript框架
2013/10/25 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
JavaScript知识点整理
2015/12/09 Javascript
Javascript随机标签云代码实例
2016/06/21 Javascript
jQuery 移动端拖拽(模块化开发,触摸事件,webpack)
2016/10/28 Javascript
JavaScript & jQuery完美判断图片是否加载完毕
2017/01/08 Javascript
JQuery扩展对象方法操作示例
2018/08/21 jQuery
详解离线安装npm包的几种方法
2018/11/25 Javascript
js实现坦克大战游戏
2020/02/24 Javascript
python开发环境PyScripter中文乱码问题解决方案
2016/09/11 Python
Python数据类型之String字符串实例详解
2019/05/08 Python
分析运行中的 Python 进程详细解析
2019/06/22 Python
python爬虫 execjs安装配置及使用
2019/07/30 Python
python实现图像检索的三种(直方图/OpenCV/哈希法)
2019/08/08 Python
解决Python中回文数和质数的问题
2019/11/24 Python
在tensorflow中实现屏蔽输出的log信息
2020/02/04 Python
python 中的[:-1]和[::-1]的具体使用
2020/02/13 Python
TensorFlow打印输出tensor的值
2020/04/19 Python
基于Tensorflow一维卷积用法详解
2020/05/22 Python
python把一个字符串切开的实例方法
2020/09/27 Python
PatPat阿根廷:妈妈们的购物平台
2019/05/30 全球购物
网络教育毕业生自我鉴定
2013/10/10 职场文书
银行服务感言
2014/03/01 职场文书
社区科普工作方案
2014/06/03 职场文书
2016年寒假见闻
2015/10/10 职场文书
python第三方网页解析器 lxml 扩展库与 xpath 的使用方法
2021/04/06 Python
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
2021/08/23 HTML / CSS
springboot + mongodb 通过经纬度坐标匹配平面区域的方法
2021/11/01 MongoDB