PythonでZipファイルの操作する

PythonでZipファイルの操作してみます。

PythonでZipファイルの操作を行う場合は、zipfileモジュールを使います。zipfileモジュールは、Pythonの標準ライブラリとなっていますので、事前にインストールする必要はありません。

■Python

Pythonバージョン

今回のPythonのバージョンは、「3.8.2」を使用しています。

■Zipファイルの作成する

では、早速zipfileモジュールを使用して、Zipファイルを作成してみます。

■コード

import zipfile

new_zipfile = zipfile.ZipFile(r"C:\Users\user\test\new_zipfile.zip", mode="w", compression=zipfile.ZIP_DEFLATED)

print(new_zipfile)

new_zipfile.close()

インポートでzipfileモジュールを呼び出して、「C:\Users\user\test\(フォルダパス)」という場所に「new_zipfile.zip」というZIP形式のファイルを作成する。「mode=”w”」と指定することで、新規作成・上書きが行われる。新規作成・上書きを行うZIP形式のファイルは「compression」を記述することで、圧縮方式を指定できます。今回は通常のZIP圧縮(zipfile.ZIP_DEFLATED)を行います。

■実行

今回のスクリプトを「new_zipfile_create.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、「C:\Users\user\test\(フォルダパス)」という場所に「new_zipfile.zip」というZIP形式のファイルが作成されていることが確認できました。

■作成したZipファイルに書き込む

Zipファイルを作成することができましたが、作成したZipファイルの中身は空です。次は、作成したZipファイルにファイルを書き込んでみます。

■コード

import zipfile

new_zipfile = zipfile.ZipFile(r"C:\Users\user\test\new_zipfile.zip", mode="w", compression=zipfile.ZIP_DEFLATED)

#Zipファイルへの書き込み

new_zipfile.write(r"C:\Users\user\test\sales_excel.xlsx")
new_zipfile.write(r"C:\Users\user\test\to-do-list.doc")

new_zipfile.close()

今回は書き込みを行うために、「C:\Users\user\test\(フォルダパス)」という場所にxlsx形式(売り上げ管理)のファイルと、doc形式のファイル(ToDoリスト)の2つを用意しました。

この2つのファイルをZipファイルへ書き込みするためには、write() メソッドを使用します。()の中に、ファイルが置かれている場所とファイル名を指定します。

■実行

「new_zipfile_create.py」というスクリプトを変更し、コマンドプロンプトから実行してみます。

実行してみると、「C:\Users\user\test\(フォルダパス)」という場所に「new_zipfile.zip」というZIP形式のファイルが作成されました。これを解凍して中身を確認してみます。

中身を確認してみると、xlsx形式(売り上げ管理)のファイルと、doc形式のファイル(ToDoリスト)の2つのファイルが書き込まれていることが確認できました。

コメント

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