Python打包文件夹的方法小结(zip,tar,tar.gz等)

 更新时间:2016年09月18日 14:10:00   作者:RQSLT  
这篇文章主要介绍了Python打包文件夹的方法,结合实例形式总结分析了Python打包成zip,tar,tar.gz等格式文件的操作技巧,需要的朋友可以参考下

本文实例讲述了Python打包文件夹的方法。分享给大家供大家参考,具体如下:

一、zip

import os, zipfile
#打包目录为zip文件(未压缩)
def make_zip(source_dir, output_filename):
  zipf = zipfile.ZipFile(output_filename, 'w')
  pre_len = len(os.path.dirname(source_dir))
  for parent, dirnames, filenames in os.walk(source_dir):
    for filename in filenames:
      pathfile = os.path.join(parent, filename)
      arcname = pathfile[pre_len:].strip(os.path.sep)   #相对路径
      zipf.write(pathfile, arcname)
  zipf.close()

二、tar/tar.gz

import os, tarfile
#一次性打包整个根目录。空子目录会被打包。
#如果只打包不压缩,将"w:gz"参数改为"w:"或"w"即可。
def make_targz(output_filename, source_dir):
  with tarfile.open(output_filename, "w:gz") as tar:
    tar.add(source_dir, arcname=os.path.basename(source_dir))
#逐个添加文件打包,未打包空子目录。可过滤文件。
#如果只打包不压缩,将"w:gz"参数改为"w:"或"w"即可。
def make_targz_one_by_one(output_filename, source_dir):
  tar = tarfile.open(output_filename,"w:gz")
  for root,dir,files in os.walk(source_dir):
    for file in files:
      pathfile = os.path.join(root, file)
      tar.add(pathfile)
  tar.close()

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

  • Python文件遍历os.walk()与os.listdir()使用及说明

    Python文件遍历os.walk()与os.listdir()使用及说明

    这篇文章主要介绍了Python文件遍历os.walk()与os.listdir()使用及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11
  • python中的Pyperclip模块功能详解

    python中的Pyperclip模块功能详解

    pyperclip模块中有两个函数,分别是copy()和paste(),copy()用于向计算机的剪贴板发送文本,paste()用于从计算机剪贴板接收文本,这篇文章主要介绍了python中的Pyperclip模块,需要的朋友可以参考下
    2023-03-03
  • python 拼接文件路径的方法

    python 拼接文件路径的方法

    今天小编就为大家分享一篇python 拼接文件路径的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python爬取足球直播吧五大联赛积分榜

    python爬取足球直播吧五大联赛积分榜

    这篇文章主要为大家详细介绍了python爬取足球直播吧五大联赛积分榜,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • python 实现按对象传值

    python 实现按对象传值

    今天小编就为大家分享一篇python 实现按对象传值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python 多张图片合并成一个pdf的参考示例

    Python 多张图片合并成一个pdf的参考示例

    最近需要将记的笔记整理成一个pdf进行保存,所以就研究了一下如何利用 Python 代码将拍下来的照片整个合并成一个pdf
    2021-06-06
  • python中BackgroundScheduler和BlockingScheduler的区别

    python中BackgroundScheduler和BlockingScheduler的区别

    这篇文章主要介绍了python中BackgroundScheduler和BlockingScheduler的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-07-07
  • Python迭代器的实现原理

    Python迭代器的实现原理

    这篇文章主要介绍了Python迭代器的实现原理,文章基于python的相关资料展开对Python迭代器的详细介绍,需要的小伙伴可以参考一下
    2022-05-05
  • Python实现平行坐标图的两种方法小结

    Python实现平行坐标图的两种方法小结

    今天小编就为大家分享一篇Python实现平行坐标图的两种方法小结,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python实现矩阵转置的几种方法详解

    Python实现矩阵转置的几种方法详解

    这篇文章主要介绍了Python实现矩阵转置的几种方法详解,zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存,需要的朋友可以参考下
    2023-08-08

最新评论