温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

使用python怎么实现一个压包功能

发布时间:2021-02-18 14:30:17 来源:亿速云 阅读:159 作者:Leah 栏目:开发技术

使用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怎么实现一个压包功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI