English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
この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"に変更してください。 make_targz(output_filename, source_dir): 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 ソケットプログラミングの技術集》、《Python 関数の使用技術集》、《Python 文字列操作の技術集》および《Python 入門と上級向けの经典チュートリアル》
本文で述べたことが皆様のPythonプログラム設計に役立つことを願っています。
声明:本文の内容はインターネットから提供されています。著作権は原著者に帰属します。インターネットユーザーが自発的に貢献し、自己でアップロードしたものであり、本サイトは所有権を有しておらず、人工的な編集は行われていません。著作権侵害を疑われる内容が見つかった場合は、以下のメールアドレスにご連絡ください:notice#oldtoolbag.com(メール送信時は、#を@に変更してください)で通報し、関連する証拠を提供してください。一旦確認がとりたいとされると、本サイトは即座に侵害を疑われるコンテンツを削除します。