壓縮模快- zipfile (字尾為zip
)import zipfile
格式:with zipfile.zipfile(
"file"
,mode,zipfile.zip_deflated)
功能: 建立乙個zip檔案,表示乙個zip物件
引數:file 表示壓縮包路徑,或類物件檔案
引數mode表示模式 ,預設為r 為w 就是新建立乙個壓縮包
zipfile.zip_stored 只是儲存模式,不會對檔案進行壓縮,這個是預設值
zipfile.zip_deflated 對檔案進行壓縮 (一般都用這個)
-如果要操作的zip檔案大小超過2g,應該將allowzip64設定為true。
# 建立壓縮包
zf = zipfile.zipfile(
"1234.zip"
,"w"
,zipfile.zip_deflated)
# 把檔案寫入到壓縮包
zf.write(
"/day18/mv"
,'cp'
)# 把檔案mv命名為cp壓縮到1234.zip中
# 關閉檔案
zf.close(
)# 2. 解壓檔案
# (1) 開啟壓縮包
zf = zipfile.zipfile(
"1234.zip"
,"r"
,zipfile.zip_deflated)
# (2) 解壓檔案(解壓乙個)
zf.extract(
"cp"
,"bin"
)# 解壓到某個路徑下(解壓cp到資料夾bin中)
# 解壓多個
zf.extractall(
"cp1"
,"all"
)# (3) 關閉壓縮包
zf.close(
)# 追加檔案
with zipfile.zipfile(
"1234.zip"
,"a"
,zipfile.zip_daflated)
zp.write(
"/day18/haha"
,'cp2'
)# 追加的必須是已存在的檔案
# 讀取壓縮檔案
with zipfile.zipfile(
"1234.zip"
,"r"
,zipfile.zip_deflated)
ls = zf.namelist(
)print
(ls)
字尾:
.tar 普通壓縮大小不變
.tar.gz 壓縮後檔案變小
.tar.bz2 壓縮後最小
# 建立乙個普通的tar壓縮包
import tarfile(1
)tf = tarfile.
open
("zs.tar"
,"w"
)# 建立乙個zs.tar壓縮包
tf.add(
"w.txt"
,"ww"
)# 將文件w.txt改名為ww壓縮到zs.tar中
tf.close(
)# 關閉壓縮包(2
)tf = tarfile.
open
("ceshi0729_1.tar"
,"w"
,encoding=
"utf-8"
)tf.add(
"/bin/echo"
,"echo"
)# 壓縮bin路徑下的echo
tf.add(
"/bin/ed"
,"ed"
)tf.add(
"/bin/fuser"
,"/tmp/fuser"
)# 壓縮到檔案tmp中
tf.close(
)
.tar.gz壓縮包
tf = tarfile.
open
("zs.tar.gz"
,"w"
,encoding=
"utf-8"
)# 建立乙個zs.tar.gz壓縮包
tf.add(
"w.txt"
,"ww"
)# 將文件w.txt改名為ww壓縮到zs.tar.gz中
tf.close(
)# 關閉壓縮包
.tar.bz2
tf = tarfile.
open
("zs.tar"
,"w"
,encoding=
"utf-8"
)# 建立乙個zs.tar.bz2壓縮包
tf.add(
"w.txt"
,"ww"
)# 將文件w.txt改名為ww壓縮到zs.tar.bz2中
tf.close(
)# 關閉壓縮包
解壓tf = tarfile.
open
("zs.tar"
,"r"
,encoding=
"utf-8"
)# 解壓單個
tf.extract(
"ww"
,"aa"
)# 解壓並起名為aa
Linux筆記(壓縮工具zip,tar打包工具)
一 zip壓縮工具 支援壓縮目錄,壓縮檔案和目錄後,原檔案和目錄不刪除 yum install zip y 安裝zip zip 壓縮檔案名 原檔名 壓縮檔案 r 壓縮目錄名 源目錄名 壓縮目錄 yum install unzip y 安裝解壓縮unzip unzip 壓縮檔案 目錄 解壓檔案 因為不...
每日演算法 day 19
那些你早出晚歸付出的刻苦努力,你不想訓練,當你覺的太累了但還是要咬牙堅持的時候,那就是在追逐夢想,不要在意終點有什麼,要享受路途的過程,或許你不能成就夢想,但一定會有更偉大的事情隨之而來。mamba out 2020.3.2 先將十六進製制轉化為二進位制 二進位制每四位可以表示乙個十六進製制的數字 ...
day19 學習總結
今天學習了陣列的使用和多維陣列。下面是知識點 package com.liangwenwei.陣列 public class 陣列的使用 列印全部陣列元素 for int i 0 i arrays.length i system.out.println 列印全部陣列元素 for int array ...