Pythonでテキストファイルを圧縮・アーカイブする方法

この記事では、Pythonを用いたテキストファイルの圧縮とアーカイブ管理について詳しく解説します。具体的なコード例とその解説、さらには応用例まで含めています。

目次

はじめに

テキストファイルの圧縮とアーカイブは、データの保存や転送において重要なプロセスです。Pythonの標準ライブラリを用いれば、これらの処理が簡単にできます。この記事では、zip形式とtar形式の2つを中心に説明します。

zip形式での圧縮と解凍

Pythonの`zipfile`ライブラリを使うと、zip形式での圧縮と解凍が可能です。

基本的な圧縮

import zipfile

# zipファイルを作成
with zipfile.ZipFile('example.zip', 'w') as zipf:
    zipf.write('example.txt', 'example.txt')

このコードは、`example.txt`というテキストファイルを`example.zip`というzipファイルに圧縮します。

基本的な解凍

with zipfile.ZipFile('example.zip', 'r') as zipf:
    zipf.extractall('extract_folder')

このコードは、`example.zip`を`extract_folder`に解凍します。

tar形式での圧縮と解凍

tar形式では、`tarfile`ライブラリを用います。

基本的な圧縮

import tarfile

with tarfile.open('example.tar', 'w') as tar:
    tar.add('example.txt', 'example.txt')

基本的な解凍

with tarfile.open('example.tar', 'r') as tar:
    tar.extractall('extract_folder')

応用例

パスワード付きzipファイルの作成

with zipfile.ZipFile('secure.zip', 'w') as zipf:
    zipf.setpassword(b'secret')
    zipf.write('example.txt', 'example.txt')

複数ファイルの圧縮

with zipfile.ZipFile('multi.zip', 'w') as zipf:
    zipf.write('example1.txt', 'example1.txt')
    zipf.write('example2.txt', 'example2.txt')

圧縮率の指定

with zipfile.ZipFile('compressed.zip', 'w', compression=zipfile.ZIP_DEFLATED) as zipf:
    zipf.write('large.txt', 'large.txt')

まとめ

Pythonを用いると、テキストファイルの圧縮とアーカイブが容易に行えます。標準ライブラリだけで多くのケースに対応可能ですので、ぜひ活用してください。

コメント

コメントする

目次