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


Posted in Python onOctober 18, 2018

由于同事电脑上没有直接可以压缩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 相关文章推荐
Python中元组,列表,字典的区别
May 21 Python
python实现图片处理和特征提取详解
Nov 13 Python
基于Python socket的端口扫描程序实例代码
Feb 09 Python
Python多线程同步---文件读写控制方法
Feb 12 Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
Apr 18 Python
python使用if语句实现一个猜拳游戏详解
Aug 27 Python
Python流程控制 while循环实现解析
Sep 02 Python
用python写测试数据文件过程解析
Sep 25 Python
Python函数的定义方式与函数参数问题实例分析
Dec 26 Python
python开发实例之Python的Twisted框架中Deferred对象的详细用法与实例
Mar 19 Python
PyTorch实现重写/改写Dataset并载入Dataloader
Jul 14 Python
Python中使用subprocess库创建附加进程
May 11 Python
Python 忽略warning的输出方法
Oct 18 #Python
解决python通过cx_Oracle模块连接Oracle乱码的问题
Oct 18 #Python
解决python3捕获cx_oracle抛出的异常错误问题
Oct 18 #Python
python 自定义异常和异常捕捉的方法
Oct 18 #Python
详解Python发送email的三种方式
Oct 18 #Python
python try except 捕获所有异常的实例
Oct 18 #Python
对Python中Iterator和Iterable的区别详解
Oct 18 #Python
You might like
在PHP中使用模板的方法
2008/05/24 PHP
PHP输出英文时间日期的安全方法(RFC 1123格式)
2014/06/13 PHP
Adnroid 微信内置浏览器清除缓存
2016/07/11 PHP
yii插入数据库防并发的简单代码
2017/05/27 PHP
php使用crypt()函数进行加密
2017/06/08 PHP
PHP高效获取远程图片尺寸和大小的实现方法
2017/10/20 PHP
PHP删除数组中指定值的元素常用方法实例分析【4种方法】
2018/08/21 PHP
一段利用WSH修改和查看IP配置的代码
2008/05/11 Javascript
JS控制日期显示的小例子
2013/11/23 Javascript
JavaScript设计模式之单件模式介绍
2014/12/28 Javascript
bootstrap的3级菜单样式,支持母版页保留打开状态实现方法
2016/11/10 Javascript
微信小程序 页面传参实例详解
2016/11/16 Javascript
jQuery+PHP+Mysql实现抽奖程序
2020/04/12 jQuery
nodejs利用ajax实现网页无刷新上传图片实例代码
2017/06/06 NodeJs
在Vue中获取组件声明时的name属性方法
2018/09/12 Javascript
利用d3.js制作连线动画图与编辑器的方法实例
2019/09/05 Javascript
浅析Vue下的components模板使用及应用
2019/11/27 Javascript
Python使用multiprocessing创建进程的方法
2015/06/04 Python
在Django的URLconf中进行函数导入的方法
2015/07/18 Python
pandas.loc 选取指定列进行操作的实例
2018/05/18 Python
说说如何遍历Python列表的方法示例
2019/02/11 Python
python的turtle库使用详解
2019/05/10 Python
python使用opencv在Windows下调用摄像头实现解析
2019/11/26 Python
使用python 计算百分位数实现数据分箱代码
2020/03/03 Python
Python 实现进度条的六种方式
2021/01/06 Python
业务代表的岗位职责
2013/11/16 职场文书
结构工程个人自荐信范文
2013/11/30 职场文书
售后服务经理岗位职责
2014/02/25 职场文书
毕业生应聘求职信
2014/07/10 职场文书
活动总结新闻稿
2014/08/30 职场文书
2014年社区重阳节活动策划方案
2014/09/16 职场文书
安全生产工作汇报材料
2014/10/28 职场文书
督导岗位职责
2015/02/04 职场文书
社区活动总结范文
2015/05/07 职场文书
使用Nginx+Tomcat实现负载均衡的全过程
2022/05/30 Servers
Redis特殊数据类型HyperLogLog基数统计算法讲解
2022/06/01 Redis