【Python】zipファイルの圧縮・解凍

IT
  • Pythonで圧縮ファイルを扱う機会があったので、調べて試した
  • 今回はモジュールshutilを利用
    • zipfileモジュールでも同じことができそう
    • shutilの方が汎用性高そうだったので、こちらを採用

使い方を確認

  • shutilはモジュールなのでimportが必要

    import shutil
  • 圧縮はshutil.make_archive

    shutil.make_archive(【圧縮先】,【圧縮拡張子】,【圧縮するディレクトリ】)
  • 解凍はshutil.unpack_archive

    shutil.unpack_archive解凍(【解凍したいファイル】,【解凍したファイルの配置先】)

コードと確認

  • 今回はコード実行のカレントディレクトリに各ファイルを用意する
    • 普通のテキストファイルを用意 → test_in
    • 圧縮してディレクトリに入れる → test_zip
    • 圧縮したファイルを解凍 → test_unzip
  • コード実行前はtest_intest.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_ziptest_unzipにファイルができたことが確認できた

コメント

タイトルとURLをコピーしました