Day19 zip,tar壓縮包模組

2021-10-08 19:12:25 字數 2695 閱讀 2453

壓縮模快- 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 ...