pythonでzip圧縮パッケージをgz.tarにする方法


同僚のパソコンにgz.tar形式の圧縮ソフトが直接圧縮できないので、仕事中にzipファイルをgz.tar形式に変換する必要があります。ですから、zip形式に圧縮したファイルを私に送って、gz.tar形式に圧縮して彼に送ります。pythonのtarefileと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に変更する方法は小編集が皆さんのすべての内容を共有することです。参考にしていただければ幸いです。どうぞよろしくお願いします。