【Python】ZIPファイルを解凍する

スポンサーリンク

PythonでのZIPファイルの使い方について。

この記事の内容はコチラです

  • PythonでZIPを解凍する
  • zipfileの使い方を知る

今回は、PythonでZIPファイルを解凍する方法を解説します。

ZIPファイルを解凍する

PythonではZIPファイルを解凍してZIPファイルの中を開くことができます。ZIPファイルを解凍してフォルダの中に解凍したファイルを展開します。

ZIPファイルを圧縮する方法はこちらを参照してください。

ZIPファイルを解凍する

import zipfile

# ZIPファイルを読み込み
zip_f = zipfile.ZipFile('C:\\pg\\圧縮ファイル.zip')

# ZIPを解凍
zip_f.extractall('C:\\pg\\data')

# ZIPファイルをクローズ
zip_f.close()

解凍後のフォルダ

ここでは「C:\pg\圧縮ファイル.zip」を「C:\pg\data」の中に解凍しました。

 

zipfileの解説

PythonでフォルダーをZIPファイルへ解凍するには「zipfile」モジュールを使います。ZIPファイルを読み込み、ZIPファイルを指定したフォルダへ解凍するという手順になります。

zipfile.ZipFileの使い方

import zipfile

# ZIPファイルを読み込み
zip_f = zipfile.ZipFile('C:\\pg\\圧縮ファイル.zip')

最初に「zipfile」をインポートします。

「zipfile.ZipFile」でZIPファイルを読み込みます。「zipfile.ZipFile」の第1パラメータはZIPファイルのパスです。

第2パラメータは編集モードですが、省略すると「r:読み取り」となります。

w 書き込み
r 読み取り
a 追記

圧縮するファイルを追加する

# ZIPファイルに追加
zip_f.extractall('C:\\pg\\data')

「zip_f.extractall」でZIPファイルを解凍します。パラメータは解凍先のフォルダです。

最後に「zip_f.close」で終了です。

withを使うパターン

zipファイルを扱う場合、「with」を使った方が便利です。最後の「close」が必要なく、コードがインデントするため、zipの有効範囲がわかりやすいですね。

「with」を使ったzipファイルの圧縮に変換します。

import zipfile

# ZIPファイルを読み込み
with zipfile.ZipFile('C:\\pg\\圧縮ファイル.zip') as zip_f:

    # ZIPファイルに追加
    zip_f.extractall('C:\\pg\\data')

コチラの書き方の方がいいかもしれません。

参考ページhttps://docs.python.jp/3/library/zipfile.html

PythonでフォルダーをZIPファイルを解凍することができました。

以上、PythonでZIPファイルを解凍する方法でした。

コメント

  1. aaa より:

    組み込み関数zip()を上書きするな

    • 鎖プロ より:

      確かに変数名が不適切でしたので修正しました。
      ご指摘ありがとうございました!