python中将zip压缩包转为gz.tar的方法

yipeiwu_com6年前Python基础

由于同事电脑上没有直接可以压缩gz.tar格式的压缩软件,而工作中这个又时常需要将zip文件转换为gz.tar格式,所以常常将压缩为zip格式的文件发给我来重新压缩成gz.tar格式发给他,能偷懒就不想动手,就用python的tarfile和zipfile包完成了一个将zip转换成gz.tar格式的小脚本:

代码比较简单,也就几行,但是写的时候因为绝对路径的问题浪费了点时间,代码水平还是有待提高。

#coding: utf-8

import os
import tarfile
import zipfile

def zip2tar(root_path, name,to_name='test'):

 '''
 root_path: 压缩文件所在根目录
 name: 压缩文件名字(zip格式)
 '''
 #root_path = r'C:\Users\Administrator\Desktop\somefiles'
 #file_path = os.path.join(root_path, 'somemodel.zip')

 file_path = os.path.join(root_path, name+'.zip')

 with zipfile.ZipFile(file_path, 'r') as zzip:
  with tarfile.open(os.path.join(root_path, to_name+'.gz.tar'), 'w') as ttar:
   for ffile in zzip.namelist():
    if not os.path.isdir(ffile):
    #if not ffile.strip().endswith(r'/'):
     zzip.extract(ffile, root_path)
     ttar.add(os.path.join(root_path,ffile), arcname=ffile)


if __name__ == '__main__':

 root_path = raw_input(u'input root path: ')
 name = raw_input(u'input the zip name(without .zip): ')
 zip2tar(root_path, name)

以上这篇python中将zip压缩包转为gz.tar的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Windows下安装python2.7及科学计算套装

Windows下安装python2.7及科学计算套装

安装环境及说明 操作系统:64位win7 以下所有安装包已经被我打包至网盘,请移步到 http://www.colafile.com/file/4591550进行下载 因为在64位win...

Python cookbook(数据结构与算法)将序列分解为单独变量的方法

本文实例讲述了Python cookbook(数据结构与算法)将序列分解为单独变量的方法。分享给大家供大家参考,具体如下: 如果对象是可迭代的(任何序列),则可以进行分解操作,包括元组、...

python+pandas生成指定日期和重采样的方法

python 日期的范围、频率、重采样以及频率转换 pandas有一整套的标准时间序列频率以及用于重采样、频率推断、生成固定频率日期范围的工具。 生成指定日期范围的范围 pandas.d...

编写Python CGI脚本的教程

编写Python CGI脚本的教程

你是否想使用Python语言创建一个网页,或者处理用户从web表单输入的数据?这些任务可以通过Python CGI(公用网关接口)脚本以及一个Apache web服务器实现。当用户请求一...

详解python之简单主机批量管理工具

详解python之简单主机批量管理工具

今天做了一个很简单的小项目,感受到了paramiko模块的强大,也深感自己Linux的功力不行~~ 一、需求 二、简单需求分析及流程图 需求很少,我就简单地说下: 1. 主机分...