一、 使用tarfile库读取与创建tar包

1. 创建tar包
In [1]: import tarfile

In [2]: with tarfile.open('demo.tar',mode='w') as out:
   ...:     out.add('1.txt')
   ...:     out.add('2.txt')
   ...:     
2. 读取tar包
In [1]: import tarfile

In [2]: with tarfile.open('demo.tar') as t:
   ...:     for file in t.getmembers():
   ...:         print(file.name)
   ...:         
1.txt
2.txt
3. 创建压缩包
In [8]: with tarfile.open('demo.tar.gz',mode='w:gz') as out:
   ...:     out.add('1.txt')
   ...:     out.add('2.txt')
4. 读取压缩包
In [10]: with tarfile.open('demo.tar.gz',mode='r:gz') as out:
    ...:     for f in out.getmembers():
    ...:         print(f.name)
    ...:                 
1.txt
2.txt
5. 提取单个或者所有文件
In [14]: with tarfile.open('demo.tar.gz',mode='r:gz') as out:
    ...:     out.extract('1.txt')
    ...:                  

In [15]: with tarfile.open('demo.tar.gz',mode='r:gz') as out:
    ...:     out.extractall()
    ...:          

 

二、使用zipfile库创建和读取压缩包

1. 创建zip文件
In [19]: import zipfile

In [20]: newZip = zipfile.ZipFile('demo.zip','w')

In [21]: newZip.write('1.txt')

In [22]: newZip.write('2.txt')

In [23]: newZip.close()
2. 读取zip文件
In [24]: newZip = zipfile.ZipFile('demo.zip')

In [25]: newZip.namelist()
Out[25]: ['1.txt', '2.txt']
3. 解压zip文件
In [27]: newZip.extract('1.txt')
Out[27]: '/tmp/test/1.txt'

In [28]: newZip.extractall()

  

三、 使用shutil管理压缩包

In [40]: import shutil

In [41]: shutil.make_archive('demo','zip')
Out[41]: 'demo.zip'

In [42]: shutil.make_archive('demo','gztar')
Out[42]: 'demo.tar.gz'

In [43]: shutil.unpack_archive('demo.tar.gz')

In [44]: shutil.unpack_archive('demo.zip')

  

 

相关文章:

  • 2022-01-22
  • 2021-11-20
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2021-06-23
  • 2021-12-05
  • 2022-02-07
猜你喜欢
  • 2021-09-19
  • 2021-11-06
  • 2021-08-15
  • 2021-08-18
  • 2021-11-21
  • 2021-09-06
  • 2021-07-18
相关资源
相似解决方案