python壓包的概念及實(shí)例詳解
對于一些分解后的元素,我們也是有重新歸類的需要。那么我們把解包的恢復(fù)過程,叫做壓包。這里要用到zip函數(shù)的方法,對元素重新進(jìn)行打包處理,在之前的學(xué)習(xí)中我們已經(jīng)對zip函數(shù)有所接觸。下面我們就python壓包的概念、方法進(jìn)行介紹,然后帶來相關(guān)的實(shí)例使用。
1、概念壓包是解包的逆過程,用zip函數(shù)實(shí)現(xiàn)。
2、方法(1)zip() 函數(shù)用于將可迭代的對象作為參數(shù),將對象中對應(yīng)的元素打包成一個(gè)個(gè)元組,然后返回由這些元組組成的對象(Python3)。
(2)如果各個(gè)迭代器的元素個(gè)數(shù)不一致,則返回列表長度與最短的對象相同,利用*號(hào)操作符,可以將元組解壓為列表。
3、實(shí)例先是zip函數(shù)將a b壓包成為一個(gè)可迭代對象,對可迭代對象的每一個(gè)元素((‘a(chǎn)’, 1))進(jìn)行解包(i, j = (‘a(chǎn)’, 1)),此時(shí)就可以分別調(diào)用i j變量進(jìn)行計(jì)算。
>>> a = [0, 1, 2]>>> b = [1, 2, 3]>>> for i, j in zip(a, b):... print(i+j)...135
知識(shí)點(diǎn)擴(kuò)展
1.Python--gzip壓縮ZIP文件:
import gzipf_src = open('data.txt', 'rb') #打開文件f_tar= gzip.open('data.txt.gz', 'wb')#創(chuàng)建壓縮文件對象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:testsitemap.xml’).read())g.close()
其中,filename參數(shù)是壓縮文件內(nèi)文件的名字,為空也可以,不修改。fileobj是生成的壓縮文件對象,它的路徑名稱等。最后是把文件寫入gzip文件中去,再關(guān)閉操作連接。
2.Python--gzip解壓ZIP文件:
import gzipf = gzip.open('data.txt.gz', ’rb’) #打開壓縮文件對象f_out=open('data.txt','w')#打開解壓后內(nèi)容保存的文件file_content = f.read() #讀取解壓后文件內(nèi)容f_out.write(file_content.decode('utf-8')) #寫入新文件當(dāng)中print(file_content) #打印讀取內(nèi)容f.close()f_out.close()
g = gzip.GzipFile(mode='rb', fileobj=open(’d:testsitemap.log.gz’, ’rb’))open(r'd:haha.xml', 'wb').write(g.read())
使用的時(shí)候注意,函數(shù)方法的大小寫一點(diǎn)要看仔細(xì),如果gzip文件是這種形式的:*.tar.gz,證明先是由tar命令壓縮后,后再由 gzip壓縮的,需要先用解壓縮tar文件,再用gzip模塊解壓縮。其實(shí),現(xiàn)在很多網(wǎng)頁為了提高瀏覽器端用戶的訪問速度,和搜索引擎爬蟲抓取的速度,都在使用gzip壓縮。
到此這篇關(guān)于python壓包的概念及實(shí)例詳解的文章就介紹到這了,更多相關(guān)python壓包是什么內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Python2.6版本pip安裝步驟解析2. python公司內(nèi)項(xiàng)目對接釘釘審批流程的實(shí)現(xiàn)3. python中Ansible模塊的Playbook的具體使用4. Python自動(dòng)化之定位方法大殺器xpath5. Python本地及虛擬解釋器配置過程解析6. Python 利用flask搭建一個(gè)共享服務(wù)器的步驟7. 基于python實(shí)現(xiàn)matlab filter函數(shù)過程詳解8. Python中Anaconda3 安裝gdal庫的方法9. python自動(dòng)化測試三部曲之request+django實(shí)現(xiàn)接口測試10. Python importlib模塊重載使用方法詳解
