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访问系统环境变量的方法
Apr 29 Python
Python 自动刷博客浏览量实例代码
Jun 14 Python
TensorFlow模型保存和提取的方法
Mar 08 Python
python获取微信小程序手机号并绑定遇到的坑
Nov 19 Python
对python中数据集划分函数StratifiedShuffleSplit的使用详解
Dec 11 Python
对python读取zip压缩文件里面的csv数据实例详解
Feb 08 Python
Python求均值,方差,标准差的实例
Jun 29 Python
Python爬虫 bilibili视频弹幕提取过程详解
Jul 31 Python
使用Django搭建web服务器的例子(最最正确的方式)
Aug 29 Python
Python assert关键字原理及实例解析
Dec 13 Python
flask框架蓝图和子域名配置详解
Jan 25 Python
解决Python发送Http请求时,中文乱码的问题
Apr 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 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析
2011/03/28 PHP
如何使用php绘制在图片上的正余弦曲线
2013/06/08 PHP
php调整服务器时间的方法
2015/04/03 PHP
php对xml文件的增删改查操作实现方法分析
2017/05/19 PHP
PHP多进程编程实例详解
2017/07/19 PHP
PHP实现生成数据字典功能示例
2018/05/24 PHP
解决Laravel 不能创建 migration 的问题
2019/10/09 PHP
JS实现的通用表单验证插件完整实例
2015/08/20 Javascript
javascript cookie的简单应用
2016/02/24 Javascript
JavaScript中误用/g导致的正则test()无法正确重复执行的解决方案
2016/07/27 Javascript
Javascript动画效果(1)
2016/10/11 Javascript
Vue.js路由vue-router使用方法详解
2017/03/20 Javascript
十大热门的JavaScript框架和库
2017/03/21 Javascript
jQuery+HTML5实现WebGL高性能烟花绽放动画效果【附demo源码下载】
2017/08/18 jQuery
JS实现点击复选框变更DIV显示状态的示例代码
2017/12/18 Javascript
重新认识vue之事件阻止冒泡的实现
2018/08/02 Javascript
微信小程序按钮点击动画效果的实现
2019/09/04 Javascript
在Vue中使用this.$store或者是$route一直报错的解决
2019/11/08 Javascript
ES5新增数组的实现方法
2020/05/12 Javascript
微信小程序实现转盘抽奖
2020/09/21 Javascript
js实现筛选功能
2020/11/24 Javascript
Python编写一个优美的下载器
2018/04/15 Python
解决Python一行输出不显示的问题
2018/12/03 Python
python变量的存储原理详解
2019/07/10 Python
python tornado使用流生成图片的例子
2019/11/18 Python
彻底搞懂 python 中文乱码问题(深入分析)
2020/02/28 Python
Python selenium模块实现定位过程解析
2020/07/09 Python
django rest framework使用django-filter用法
2020/07/15 Python
台湾时尚彩瞳专门店:imeime
2019/08/16 全球购物
PHP两种查询函数array/row的区别
2013/06/03 面试题
设计总监岗位职责
2013/12/07 职场文书
班组安全员工作职责
2014/02/01 职场文书
委托书的格式
2014/08/01 职场文书
迎新春趣味活动方案
2014/08/24 职场文书
侵犯商业秘密的律师函
2015/05/27 职场文书
redis 存储对象的方法对比分析
2021/08/02 Redis