- Pythonで圧縮ファイルを扱う機会があったので、調べて試した
- 今回はモジュール
shutilを利用zipfileモジュールでも同じことができそうshutilの方が汎用性高そうだったので、こちらを採用
使い方を確認
-
shutilはモジュールなのでimportが必要import shutil -
圧縮は
shutil.make_archiveshutil.make_archive(【圧縮先】,【圧縮拡張子】,【圧縮するディレクトリ】) -
解凍は
shutil.unpack_archiveshutil.unpack_archive解凍(【解凍したいファイル】,【解凍したファイルの配置先】)
コードと確認
- 今回はコード実行のカレントディレクトリに各ファイルを用意する
- 普通のテキストファイルを用意 →
test_in - 圧縮してディレクトリに入れる →
test_zip - 圧縮したファイルを解凍 →
test_unzip
- 普通のテキストファイルを用意 →
- コード実行前は
test_inにtest.txtがある - コード実行後に
test_zipに圧縮ファイルtest_unzipに解凍ファイル(test_inと同じファイル)
があることが成功条件
コード実行前のファイル

test_inにのみファイルがある状態
コード
import shutil
# 圧縮 (【圧縮先】, 【圧縮拡張子】, 【圧縮するディレクトリ】)
shutil.make_archive("./test_zip/test", "zip", "./test_in/")
# 解凍(【解凍したいファイル】, 【解凍したファイルの配置先】)
shutil.unpack_archive("./test_zip/test.zip", "./test_unzip/")
コード実行後のファイル

test_zip、test_unzipにファイルができたことが確認できた


コメント