Pythonでは、zipfile
とglob
モジュールを使用して、ファイルやディレクトリの操作を行うことができます。特に、これらのモジュールを組み合わせることで、効率的なファイル管理を実現することが可能です。
zipfileとglobの基本
まず、zipfile
とglob
の基本的な使い方について説明します。
zipfile
zipfile
モジュールは、ZIPファイルの作成、読み込み、書き込み、追加、抽出などを行うためのモジュールです。
import zipfile
# ZIPファイルの作成
with zipfile.ZipFile('new.zip', 'w') as new_zip:
new_zip.write('file.txt')
# ZIPファイルの読み込み
with zipfile.ZipFile('new.zip', 'r') as zip_ref:
zip_ref.extractall('extracted_files')
glob
glob
モジュールは、Unixシェルのルールに基づいて指定したパターンに一致するすべてのパス名を見つけ出すためのモジュールです。
import glob
# 現在のディレクトリの全ての txt ファイルを見つける
for file in glob.glob("*.txt"):
print(file)
zipfileとglobを組み合わせる
これらのモジュールを組み合わせることで、特定のパターンに一致する複数のファイルを一度にZIPファイルにまとめることができます。
import zipfile
import glob
def create_zip(folder_name):
path_ary = glob.glob(f'{folder_name}/**', recursive=True)
with zipfile.ZipFile(f'{folder_name}.zip', 'w', compression=zipfile.ZIP_DEFLATED) as new_zip:
for path in path_ary:
new_zip.write(path)
この関数create_zip
は、指定したフォルダ内のすべてのファイルをZIPファイルにまとめます。glob.glob(f'{folder_name}/**', recursive=True)
により、指定したフォルダ内のすべてのファイルのパスを取得しています。
以上が、Pythonのzipfile
とglob
モジュールを用いたファイル操作の一例です。これらのモジュールを理解し、適切に使用することで、Pythonでのファイル操作がより便利で効率的になります。.